Re: Data entry / data editing tools (more end-user focus).

From: Frank Alberto Rodriguez <franknigth(at)gmail(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Data entry / data editing tools (more end-user focus).
Date: 2019-05-23 14:09:20
Message-ID: 7d3ea7f5339a7bcfe0afc4f36470de47d1ab0108.camel@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

If you have the database modeled, the most quickly think I can thinks
is with python framework Django. Configure the connection to the DB and
make reverse engineer with Django, this create the entities class,
then activate the administration forms and configure each form for the
entities (few lines) and Django makes the magic and makes the GUI for
the DB and if the entities are related this give you the option to
insert before the entities needed. As a plus, you have the access
control module done too.
Regards
On Thu, 2019-05-23 at 11:52 +0200, Tony Shelver wrote:
> I looked at quite a few options. Some constraints on my side that
> our direction is open source, with Linux development and servers.
> Radzen is .NET: I could just as well use MS Access to cobble
> together a front end.
>
> CUBA and OpenXava are Java based and seem to require writing Java for
> logic: I last used nearly 20 years ago and 'fast' development and
> Java IMHO is an oxymoron.
>
> Aurelia looks a bit promising, but I am not sure if it gains anything
> over the current crop of JS libraries and frameworks, such as Vue,
> React et al, and then libraries / frameworks built on top of those
> such as Nuxt / Vue, Quasar / Vue or Vuetify / Vue, which seem to
> have far more activity on Github.
>
> I managed to set up a quick and dirty front end using LibreOffice
> Base over a weekend, next iteration i will probably move over to a
> Vue framework, probably using Quasar..
>
> On Sat, 18 May 2019 at 00:26, Stefan Keller <sfkeller(at)gmail(dot)com>
> wrote:
> > Dear all
> >
> >
> >
> > What about following „Rapid App Development Tools"?
> >
> > * OpenXava (Java):
> > https://www.openxava.org/ate/visual-studio-lightswitch
> >
> > * Radzen (.NET):
> > https://www.radzen.com/visual-studio-lightswitch-alternative/
> >
> > * Other: https://aurelia.io/ (JS) or CUBA
> > https://www.cuba-platform.com/ (Java)
> >
> >
> >
> > :Stefan
> >
> >
> >
> > Am Do., 28. März 2019 um 15:39 Uhr schrieb Adrian Klaver
> >
> > <adrian(dot)klaver(at)aklaver(dot)com>:
> >
> > >
> >
> > > On 3/27/19 11:49 PM, Tony Shelver wrote:
> >
> > >
> >
> > > Please reply to list also, more eyes on the the problem.
> >
> > > Ccing list
> >
> > >
> >
> > > My take on below is since you are feeding a Website why not use
> > Web
> >
> > > technologies for your data entry. My language of choice is
> > Python. I
> >
> > > have done something similar to this(on small scale) using the
> > Django
> >
> > > framework. For something lighter weight there is Flask. Then your
> > client
> >
> > > becomes a browser and you do not have to distribute forms around.
> > You
> >
> > > could integrate with the existing Web apps you are using e.g.
> > SnipCart.
> >
> > >
> >
> > >
> >
> > > > Actually I found a possibility. LibreOffice Base on top of PG
> > lets me
> >
> > > > paste photos into a Postgresql bytea field no problem. MS
> > Access should
> >
> > > > work well also, but I am not going to buy it, and running
> > Ubuntu most of
> >
> > > > the time.
> >
> > > > Possibly will distribute the Base forms to select users to
> > enter data.
> >
> > > > We are a startup company, so this is an affordable temporary
> > fix, until
> >
> > > > the product I have been looking at matures, or we can roll our
> > own.
> >
> > > >
> >
> > > > We are building a company website, including an eStore, and
> > have a few
> >
> > > > hundred products to load and maintain. Our product data
> > currently isn't
> >
> > > > suitable for a sales catalog.
> >
> > > > (Brands, categories, products, pricing and deal info, specials,
> > images,
> >
> > > > product comparisons and so on).
> >
> > > >
> >
> > > > Right now I input / maintain this via CSV files maintained
> > through a
> >
> > > > spreadsheet (LibreOffice Calc) which our site generator
> > (Jekyll) uses
> >
> > > > to build out the static HTML product [pages automatically.
> >
> > > > This is really quick to enter basic data, but I have to
> > manually
> >
> > > > maintain image uploads, image names and so on manually in the
> >
> > > > spreadsheet and through individual file uploads. We have at
> > least one,
> >
> > > > preferably 3 and up to 6 photos per product to maintain. Call
> > it a 1000
> >
> > > > images right now, and that will only go up.
> >
> > > > Invalid text / characters in product descriptions and so on can
> > break
> >
> > > > the CSV as well.
> >
> > > >
> >
> > > > There are headless CMS solutions out on the market targeting
> > this same
> >
> > > > area, but for various reasons the suitable ones are still
> > maturing and
> >
> > > > shaking out in the marketplace, so I am not in a hurry to make
> > a choice.
> >
> > > >
> >
> > > > So the goal is to replace CSV with JSON file input. This will
> > also make
> >
> > > > my life easier for more complex structures such as multiple
> > categories
> >
> > > > and specs per product.
> >
> > > > I also want to migrate text that can change from the HTML pages
> > into the
> >
> > > > database for easier changes by end users. For this the users
> > could use
> >
> > > > a WYSIWIG MarkDown editor, and just cut and past the MarkDown
> > into Base
> >
> > > > forms when finished. This will be converted to HTML at build
> > time by
> >
> > > > Jekyll static site generator or a script.
> >
> > > >
> >
> > > > So the proposed solution:
> >
> > > > 1. Create the database in Postgresql.
> >
> > > > 2. Link Base or other tool to it and design input forms where
> > necessary
> >
> > > >
> >
> > > > 3. Enter the data through Base into PG including images,
> > MarkDown / HTML
> >
> > > > text, long descriptions and so on.
> >
> > > > 3a. If I don't get a suitable CMS going, I could spend some
> > time
> >
> > > > developing a Vue/Quasar/Nuxt whatever front end to handle this,
> > in
> >
> > > > several months time.
> >
> > > >
> >
> > > > 4. Pull the data from Postgres using Python (Psycopg2 will
> > handle
> >
> > > > images). Or a node.js app once my JS skills improve.
> >
> > > > 4A: optionally use PostgREST, Postgraphile, Pytone Graphene or
> > other to
> >
> > > > create an externally accessible API, and then use Python or
> > javascript
> >
> > > > module to pull the data out.
> >
> > > >
> >
> > > > 5. This program will then write the JSON product file to the
> > website
> >
> > > > data source directory with image tags, and upload the files to
> > the image
> >
> > > > store. Also create product item HTML page templates or or
> > modify HTML
> >
> > > > content where necessary.
> >
> > > > 6. At this stage the Jekyll static site generator will detect
> > the new
> >
> > > > JSON data and any changed pages, and regenerate all changed
> > pages, move
> >
> > > > images and so on.
> >
> > > >
> >
> > > > 7. Git commit will push the generated site to Github, and Git
> > will then
> >
> > > > send everything to our CDN.
> >
> > > >
> >
> > > > There is no traditional web server / app server / db server
> > setup as you
> >
> > > > would find for most websites using, for example, Wordpress,
> > Magento
> >
> > > > commerce or other tools. Just the CDN.
> >
> > > >
> >
> > > > Everything is static HTML and some javascript. Because there
> > is no
> >
> > > > backend system, database or anything else at run time,just when
> >
> > > > generating the site, I am not concerned about performance
> > except at
> >
> > > > site build time, which will not happen that often. All the SEO
> > data
> >
> > > > (w3schema / Google, OG / Facebook and Twitter cards) is
> > automatically
> >
> > > > built into the templates and fleshed out by our build process,
> > so it
> >
> > > > exists as searchable static content on our page.
> >
> > > >
> >
> > > > Further down the road we will slowly migrate to a front-end
> > javascript
> >
> > > > framework like Vue / Nuxt or React / Next, where our site will
> > remain
> >
> > > > mostly static, with JS in the browser talking to back end
> > hosted
> >
> > > > services. We already interact directly from the browser with
> > SnipCart
> >
> > > > for shopping card, order management and payment gateway
> > services.
> >
> > > >
> >
> > > > Not sure if that helps explain the problem space a bit better.
> >
> > > >
> >
> > > >
> >
> > > >
> >
> > > > On Wed, 27 Mar 2019 at 16:15, Adrian Klaver <
> > adrian(dot)klaver(at)aklaver(dot)com
> >
> > > > <mailto:adrian(dot)klaver(at)aklaver(dot)com>> wrote:
> >
> > > >
> >
> > > > On 3/27/19 3:48 AM, Tony Shelver wrote:
> >
> > > > > Looking for a good tool that I can give to users to
> > enter data (for
> >
> > > > > example, products, categories, brands, price tables and
> > so on).
> >
> > > > > Preferably it should also allow images to be copied into
> > a bytea
> >
> > > > field
> >
> > > > > but I know I can't have everything.
> >
> > > > >
> >
> > > > > Been battling with a few open source 'headless' content
> > management
> >
> > > > > systems the last few weeks. All they really are is a
> > data schema
> >
> > > > > designer, an API interface (for the API / database based
> > ones like
> >
> > > > > Strapi and Directus), and a content entry front end,
> > along with some
> >
> > > > > access management added in.
> >
> > > > > And they don't necessarily play well with the DB, or the
> > technology
> >
> > > > > stack is something I don't want to deal with.
> >
> > > > >
> >
> > > > > I figure using PostgREST or Postgraphile or Python
> > Graphene or
> >
> > > > any of
> >
> > > > > the dedicated 3rd party REST / GraphQL APIs will
> > probably give as
> >
> > > > good
> >
> > > > > an API as most of the new content managers,
> >
> > > > >
> >
> > > > > pgModeler.io is a way better schema design tool than
> > what I have
> >
> > > > found
> >
> > > > > in the CMS systems I have used so far as well.
> >
> > > > >
> >
> > > > > Data that I would like to store (and edit) is the usual,
> > but also
> >
> > > > > images, HTML sections, and markdown.
> >
> > > > >
> >
> > > > > Any ideas?
> >
> > > >
> >
> > > > I am not really sure from above what you want, so some
> > questions:
> >
> > > >
> >
> > > > 1) GUI form interface?
> >
> > > > GUI form builder?
> >
> > > >
> >
> > > > 2) Enter records one at time or in bulk?
> >
> > > >
> >
> > > > 3) Cross platform?
> >
> > > > If so what platforms?
> >
> > > >
> >
> > > >
> >
> > > >
> >
> > > > --
> >
> > > > Adrian Klaver
> >
> > > > adrian(dot)klaver(at)aklaver(dot)com <mailto:adrian(dot)klaver(at)aklaver(dot)com
> > >
> >
> > > >
> >
> > >
> >
> > >
> >
> > > --
> >
> > > Adrian Klaver
> >
> > > adrian(dot)klaver(at)aklaver(dot)com
> >
> > >
> >
> > >
> >

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Rich Shepard 2019-05-23 14:30:45 Re: Data entry / data editing tools (more end-user focus).
Previous Message AYahorau 2019-05-23 14:05:06 Re: terminating walsender process due to replication timeout