mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2025-02-25 18:55:31 -06:00
944bdbb96c3b360c856d7586144b835e44afac43
The current implementaton binds the cell/control object, and the ajax data in the asychronous Cells/Controls with the 'options' functions extended from the Select2Cell. The problem starts when we try to fetch the current model from that options/transform/filter function to do some operation, which does not require in most of the cases. Except the privileges control - where we needed the current model for omitting the existing selected object during transformation, and filtering. In order resolved the issue, we need a common object, which is shared among the Cell. In backgrid, the 'Column' object is mong the cell, hence - implementation logic has been changed to bid the 'Column' object with the 'options' function and, passed the 'Cell' object as an arguments. Because - we do use the common function 'transform' between 'Control' and 'Cell', we needed make changes in the Select2Control to pass the Control object as an arguments. And, make the changes in the privileges control to use the new implementation. The same logic is also required in some of the operations, we will be/are working on the table/column nodes.
pgAdmin 4
=========
pgAdmin 4 is a rewrite of the popular pgAdmin3 management tool for the
PostgreSQL (http://www.postgresql.org) database.
At present, it is an experimental/proof of concept project. Use at your own
risk, and don't blame us if it breaks anything!
Architecture
------------
pgAdmin 4 is being written as a web application in Python, using jQuery and
Bootstrap for the client side processing and UI. On the server side, Flask is
being utilised.
Although developed using web technologies, we intend for pgAdmin 4 to be usable
either on a web server using a browser, or standalone on a workstation. The
runtime/ subdirectory contains a QT based runtime application intended to allow
this - it is essentially a browser and Python interpretor in one package which
will be capable of hosting the Python application and presenting it to the user
as a desktop application.
Building
--------
To build the runtime, the following packages must be installed:
- QT 4.6 or above (older versions may work, but haven't been tested).
- Python 2.6 or above.
Assuming both qmake and python-config are in the path:
$ cd $PGADMIN4_SRC/runtime
$ qmake
Project MESSAGE: Building for QT5+...
$ make
...
On Linux, an executable called 'pgAdmin4' will be built, and on Mac OS X, an
app bundle called pgAdmin4.app will be created.
To build the runtime on a Windows system, export PYTHON_HOME and PYTHON_VERSION
variables in the System environment. Specify the PYTHON_VERSION with the major
and minor number. Do not specify micro level version.
For example, given a Python version of A.B.C; A - Major number, B - Minor number,
C - Micro level (Bug fix releases).
If Python version is 2.7.2 than specify PYTHON_VERSION=27
e.g. PYTHON_HOME=C:\Python27\
PYTHON_VERSION=27
Support
-------
pgAdmin 4 is completely experiemental and unsupported!
Project info
------------
The source code repository can be found here:
http://git.postgresql.org/gitweb/?p=pgadmin4.git;a=summary
A Redmine project for pgAdmin 4 can be found at the address below. A PostgreSQL
community account is required to access this site. Please note that at present
only project developers can log bug and feature requests:
https://redmine.postgresql.org/projects/pgadmin4
If you wish to discuss pgAdmin 4, or contribute to the project, please use the
pgAdmin Hackers mailing list:
pgadmin-hackers@postgresql.org
--
Dave Page
pgAdmin Project Lead
Description
pgAdmin is the most popular and feature rich Open Source administration and development platform for PostgreSQL, the most advanced Open Source database in the world.
Readme
324 MiB
Languages
Python
62.2%
JavaScript
33.9%
PLpgSQL
1.8%
Shell
0.7%
TypeScript
0.5%
Other
0.8%