Re: [Patch] PGAdmin 4 JSON Handling - Mailing list pgadmin-hackers
From | Ronan Dunklau |
---|---|
Subject | Re: [Patch] PGAdmin 4 JSON Handling |
Date | |
Msg-id | 2441073.ykeTWxAKp8@ronan.dunklau.fr Whole thread Raw |
In response to | Re: [Patch] PGAdmin 4 JSON Handling (Ashesh Vashi <ashesh.vashi@enterprisedb.com>) |
Responses |
Re: [Patch] PGAdmin 4 JSON Handling
Re: [Patch] PGAdmin 4 JSON Handling |
List | pgadmin-hackers |
Le jeudi 16 avril 2015 15:46:51 Ashesh Vashi a écrit : > Hi Ronan, > > On Thu, Apr 16, 2015 at 2:49 PM, Ronan Dunklau <ronan.dunklau@dalibo.com> > > wrote: > > Hello. > > > > I'm trying to dive into the PGAdmin 4 codebase, and one low hanging fruit > > that > > I saw was the handling of JSON data. > > > > The first patch is really trivial, and allows PgAdmin4 to run on system > > with > > case sensitive filesystems. > > > > JSON data should be returned to the client using an application/json MIME- > > TYPE. Flask already provides an easy way to generate JSON response, with > > its > > jsonify function. > > > > This patch does not change anything architecturally, it just ensure that > > the > > get_nodes method of each hook returns JSONizable objects, instead of > > building > > them manually. > > > > Moreover, there was a function already in place to return JSON document > > according to a certain layout (everything under "data", with metadata > > attached > > along the way), which was not used by the ACi tree. This patch also > > changes > > this format to ensure the json responses returned by the application are > > consistent. > > Thanks for the patches. > These changes are already been done in my current development work, which > is still a WIP. (Hence - it has not been checked-in/shared.) > > Thanks any way. Is there a public branch where I can see this WIP ? As for the other proposals regarding the structure of the javascript code and the module / hooks API, do you have any comment ? Thank you. > > -- > > Thanks & Regards, > > Ashesh Vashi > EnterpriseDB INDIA: Enterprise PostgreSQL Company > <http://www.enterprisedb.com> > > > *http://www.linkedin.com/in/asheshvashi* > <http://www.linkedin.com/in/asheshvashi> > > > On a side note, I have a few questions about the architecture of the > > application. > > > > - the "hooks" function should really implement a common class, instead of > > relying on testing the presence of attributes to find a function. > > Essentially, > > hooks modules are classes in disguise right now. I think it may be cleaner > > to > > define our own Blueprint subclass to add those methods. > > - regarding the jsonification, I feel like the NODE_TYPE should be a part > > of > > the model itself, via a class attribute. A common method should be > > implemented > > for all nodes, such as to eliminate duplicated code like the one which can > > be > > found in the servers/hooks et server_groups/hooks get_nodes implementation > > > > What are your thought on this ? > > > > Sorry for the noise in the patch, but my vim configuration automatically > > removes extraneous white spaces. If you'd prefer a separate patch for > > that, I > > can try to generate one. > > > > As for the Javascript, did you consider using a rich application > > framework ? > > For such a massive application as PgAdmin, I feel like developing each > > component from a jquery plugin and some glue might not scale well with the > > size of the app, and could lead to unmaintainable code. By Rich > > Application > > Framework, I'm thinking about something like Dojo or ExtJS. > > > > -- > > Ronan Dunklau > > http://dalibo.com - http://dalibo.org -- Ronan Dunklau http://dalibo.com - http://dalibo.org
Attachment
pgadmin-hackers by date: