sosedoff / pgweb

Cross-platform client for PostgreSQL databases
https://sosedoff.github.io/pgweb
MIT License
8.63k stars 732 forks source link

Customizing Login Form for Simplicity #373

Closed belonesox closed 6 years ago

belonesox commented 6 years ago

Right now if pgweb is launched in multisession mode, login form is overcomplicated:

One of the most popular case, is running pgweb on the same host where Postgresql launched, and in that case users should only know about their login/password, and may be database name (ideally, users should make database choice after login, from list of available databases for the users, and allow easy switching).

Users should not know about "127.0.0.1", "SSL Mode", etc.

So please, let somehow implement it.

May be support some config or commandline params to "hardcode" like this:

   pgweb  --sessions --connection-standard --dbhost=127.0.0.1 --dbport=15432 --dbssl=disable

May be config, that point to some HTML/Jinja/... template, where we can hardcode params in login form.

May be another solution.... but please, lets simplify login form anyway.

sosedoff commented 6 years ago

I don't see what's the problem with current connection screen, you have a very simple (schema) view with a single field to enter Postgres URI. The bare minimum is postgres://localhost/dbname. The standard connection screen covers all the needs for local / remote browsing. For SSH there's no way around, you need all that info. So yeah, users should definitely know about host/port stuff.

Most users don't even need multi-session mode when working with pgweb locally, you can already connect to the db with: pgweb --host=localhost --db=name. Maybe i can go a bit further and set --host parameter to be localhost by default, similar to default psql behavior.

There's also bookmarks, you can create a bunch of files with connection details and then pick the bookmark to connect to with UI or with pgweb -b my_db_bookmark.