jet-admin / jet-bridge Goto Github PK
View Code? Open in Web Editor NEWJet Admin – No-code Business App builder
Home Page: https://www.jetadmin.io/
License: MIT License
Jet Admin – No-code Business App builder
Home Page: https://www.jetadmin.io/
License: MIT License
In https://app.jetadmin.io, I have a sqlite resource. When inspecting the resource and trying to do CRUD actions to a table in it, I get errors if I try to update or delete a row if its primary key has a slash character (/
) in it.
The browser network console shows the CORS OPTIONS request 405ing. For "delete" operations, the UI shows an error toast. For "update" operations (PATCH request), the UI silently fails (looks to the user as if the edit succeeded).
I believe what's happening is HTTP (DELETE|PATCH) is sent to $HOST/api/models/$TABLE/$PRIMARY_KEY
. In my case that's DELETE /api/models/user_sessions/o2t+msaxOBUNc/Ogzoat/0cFOofRwGiLt+Ex5eRiv9U=/
because my table is user_sessions
and the PK for the row I want to delete is o2t+msaxOBUNc/Ogzoat/0cFOofRwGiLt+Ex5eRiv9U=
.
I'm guessing what's happening is the /
chars in the primary key are confusing the HTTP path-based routing in Jet bridge.
Likely cause is this line:
Following the guide here: https://docs.jetadmin.io/user-guide/integrations/postgresql-integration/python-app-installation
After launching jet_bridge
for the first time and visiting the registration URL I end up here:
http://localhost:8888/api/register/?token=XXXXX
Can't do anything from there, http://localhost:8888/api/ shows the django server settings:
Here's what I get from poetry add jet-django
:
Because no versions of jet-django match >1.7.19,<2.0.0
and jet-django (1.7.19) depends on jet-bridge-base (1.7.19), jet-django (>=1.7.19,<2.0.0) requires jet-bridge-base (1.7.19).
(1) So, because jet-bridge-base (1.7.19) depends on graphene (<3.0), jet-django (>=1.7.19,<2.0.0) requires graphene (<3.0).
Because no versions of graphene-django match >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.1.1 || >3.1.1,<4.0.0
and graphene-django (3.0.0) depends on graphene (>=3.0,<4), graphene-django (>=3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.1.1 || >3.1.1,<4.0.0) requires graphene (>=3.0,<4).
And because graphene-django (3.0.1) depends on graphene (>=3.0,<4), graphene-django (>=3.0.0,<3.0.2 || >3.0.2,<3.1.1 || >3.1.1,<4.0.0) requires graphene (>=3.0,<4).
And because graphene-django (3.0.2) depends on graphene (>=3.0,<4)
and graphene-django (3.1.1) depends on graphene (>=3.0,<4), graphene-django (>=3.0.0,<4.0.0) requires graphene (>=3.0,<4).
And because jet-django (>=1.7.19,<2.0.0) requires graphene (<3.0) (1), jet-django (>=1.7.19,<2.0.0) is incompatible with graphene-django (>=3.0.0,<4.0.0)
So, because amy depends on both graphene-django (^3.0.0) and jet-django (^1.7.19), version solving failed.
Graphene 2 is ancient - time for an upgrade! Here are the things that happened in v2 to v3.
Looking forward to playing with Jet but this needs to be addressed first I'm afraid, up-to-date graphene is a hard requirement for any modern API! :)
I'm using JetAdmin for managing a REST API I've built in Golang w/ GORM. For some reason, the ID field (which is type uuid.UUID
) doesn't show up in the list when trying to create or edit a new object.
I need access to this field because when Creating a new object via the Admin I will need to manually set a new UUID (since this would normally be generated and set in Go code before the object is created).
On Ubuntu 18.04 i set up a PostgresSQL Server. Now i can connect with DBeaver with Host=Localhost, User = Postgres, Password=Test, Port=5432 on Server. I create over DBeaver a new Database jetbridge
Now i install docker, pull jetadmin/jetbridge, insert in a new file "env"
DATABASE_ENGINE=postgresql
DATABASE_HOST=127.0.0.1
DATABASE_PORT=5432
DATABASE_NAME=jetbridge
DATABASE_USER=postgres
DATABASE_PASSWORD=Test
sudo docker run --env-file env jetadmin/jetbridge
shows me:
sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) could not connect to server: Connection refused
Is the server running on host "127.0.0.1" and accepting
TCP/IP connections on port 5432?
I test DATABASE_HOST = localhost. Same Exception
I keep getting the following error trying to hook up the DB to the Supabase postgresSQL db. I have tried both the Supabase and postgresSQL connections. This info has connected to all the other tools I have tried so its a bug.
issubclass() arg 2 must be a class or tuple of classes
This would be "easy"
Changing from:
from collections import OrderedDict, Mapping, Iterable
To:
from collections.abc import Mapping, Iterable
from collections import OrderedDict
ImportError: cannot import name 'Mapping' from 'collections' (/usr/local/lib/python3.10/collections/__init__.py)
Jetadmin correctly recognises SQLite DATE field as date and offers a calendar as means to fill the field. Yet, when I click the add button I get an error message stating that there is some incompatibility between SQLite DATE field and Python datetime object.
I solved a problem by adding the
{'query': 'DATE', 'operator': 'startswith', 'date_type': fields.DateTimeField},
to the data_types
list in
jet-bridge/packages/jet_bridge_base/jet_bridge_base/serializers/model_serializer.py
Can you please patch the package?
Hello, I have a model Doctor, having many calendars, and each calendar having many availabilities. Each availability is linked to an appointment.
I need to create a custom relation to show all appointments of a Doctor in his view page.
What is next collection, next/previous collection field ?
Thanks. @f1nality
Hey there!
I belong to an open source security research community, and a member (@0xAmal) has found an issue, but doesn’t know the best way to disclose it.
If not a hassle, might you kindly add a SECURITY.md
file with an email, or another contact method? GitHub recommends this best practice to ensure security issues are responsibly disclosed, and it would serve as a simple instruction for security researchers in the future.
Thank you for your consideration, and I look forward to hearing from you!
(cc @huntr-helper)
I have this model in Django:
class Post(models.Model):
updated = models.DateTimeField(auto_now=True)
created = models.DateTimeField(auto_now_add=True)
When I create a new record in Admin Panel I get this error:
Saving Record failed: NOT NULL constraint failed: posts_post.updated
It also happend with the post.created field
Can you add an integration with MongoDB?
connect utf8 server will not correct response, because db.py connect url not set query parmater "?charset=utf8" add this query string to connect url is correct
like this
`
url.append(settings.DATABASE_NAME)
url.append('?charset=utf8')
return ''.join(url)
`
The following two line:
headers = dict(map(lambda x: (x['name'], x['value']), headers)) query_params = list(map(lambda x: (x['name'], x['value']), query_params))
Are failing:
File "/packages/jet_bridge_base/jet_bridge_base/serializers/proxy_request.py", line 214, in submit headers = dict(map(lambda x: (x['name'], x['value']), headers)) File "/packages/jet_bridge_base/jet_bridge_base/serializers/proxy_request.py", line 214, in <lambda> headers = dict(map(lambda x: (x['name'], x['value']), headers)) TypeError: byte indices must be integers or slices, not str
I have multiple databases with a custom router. Any models that are not on the "default" database do not show up in Jet.
VM324:1 Uncaught ReferenceError: Intercom is not defined
at :1:7
at gtm.js?id=GTM-WGGWW7N:475:414
at b (gtm.js?id=GTM-WGGWW7N:476:329)
at Ee (gtm.js?id=GTM-WGGWW7N:90:261)
at e (gtm.js?id=GTM-WGGWW7N:297:118)
at gtm.js?id=GTM-WGGWW7N:38:130
at Array. (gtm.js?id=GTM-WGGWW7N:298:475)
at Object.execute (gtm.js?id=GTM-WGGWW7N:298:231)
at cs (gtm.js?id=GTM-WGGWW7N:300:984)
at ls (gtm.js?id=GTM-WGGWW7N:304:7)
at Mt (gtm.js?id=GTM-WGGWW7N:320:273)
at Pt (gtm.js?id=GTM-WGGWW7N:325:158)
at Tt.b.push (gtm.js?id=GTM-WGGWW7N:328:315)
at e.sendEvent (main.4018df1630c0f23d336b.js:17:3405788)
at e.sendSimpleEvent (main.4018df1630c0f23d336b.js:17:804265)
at e.onItemClicked (main.4018df1630c0f23d336b.js:17:12787265)
at Object.handleEvent (main.4018df1630c0f23d336b.js:17:12792445)
at Object.handleEvent (main.4018df1630c0f23d336b.js:17:3206260)
at Object.handleEvent (main.4018df1630c0f23d336b.js:17:3228203)
at _r (main.4018df1630c0f23d336b.js:17:3176291)
at main.4018df1630c0f23d336b.js:17:3182384
at HTMLAnchorElement. (main.4018df1630c0f23d336b.js:17:6806152)
at HTMLAnchorElement.l (main.4018df1630c0f23d336b.js:17:11870197)
at t.invokeTask (polyfills.7fa02b484e21ce7e800d.js:1:9977)
at Object.onInvokeTask (main.4018df1630c0f23d336b.js:17:3144856)
at t.invokeTask (polyfills.7fa02b484e21ce7e800d.js:1:9898)
at e.runTask (polyfills.7fa02b484e21ce7e800d.js:1:5159)
at e.invokeTask [as invoke] (polyfills.7fa02b484e21ce7e800d.js:1:11060)
at b (polyfills.7fa02b484e21ce7e800d.js:1:24055)
at HTMLAnchorElement.m (polyfills.7fa02b484e21ce7e800d.js:1:24285)
(anonymous) @ VM324:1
(anonymous) @ gtm.js?id=GTM-WGGWW7N:475
b @ gtm.js?id=GTM-WGGWW7N:476
Ee @ gtm.js?id=GTM-WGGWW7N:90
e @ gtm.js?id=GTM-WGGWW7N:297
(anonymous) @ gtm.js?id=GTM-WGGWW7N:38
(anonymous) @ gtm.js?id=GTM-WGGWW7N:298
(anonymous) @ gtm.js?id=GTM-WGGWW7N:298
cs @ gtm.js?id=GTM-WGGWW7N:300
ls @ gtm.js?id=GTM-WGGWW7N:304
Mt @ gtm.js?id=GTM-WGGWW7N:320
Pt @ gtm.js?id=GTM-WGGWW7N:325
Tt.b.push @ gtm.js?id=GTM-WGGWW7N:328
e.sendEvent @ main.4018df1630c0f23d336b.js:17
e.sendSimpleEvent @ main.4018df1630c0f23d336b.js:17
e.onItemClicked @ main.4018df1630c0f23d336b.js:17
(anonymous) @ main.4018df1630c0f23d336b.js:17
handleEvent @ main.4018df1630c0f23d336b.js:17
handleEvent @ main.4018df1630c0f23d336b.js:17
_r @ main.4018df1630c0f23d336b.js:17
(anonymous) @ main.4018df1630c0f23d336b.js:17
(anonymous) @ main.4018df1630c0f23d336b.js:17
l @ main.4018df1630c0f23d336b.js:17
t.invokeTask @ polyfills.7fa02b484e21ce7e800d.js:1
onInvokeTask @ main.4018df1630c0f23d336b.js:17
t.invokeTask @ polyfills.7fa02b484e21ce7e800d.js:1
e.runTask @ polyfills.7fa02b484e21ce7e800d.js:1
e.invokeTask @ polyfills.7fa02b484e21ce7e800d.js:1
b @ polyfills.7fa02b484e21ce7e800d.js:1
m @ polyfills.7fa02b484e21ce7e800d.js:1
VM8:1 POST https://o229361.ingest.sentry.io/api/1304739/store/?sentry_key=1888fd140d444c10b0661c6dc0ea6937&sentry_version=7 403
I'm unable to integrate jet with a django 4 based app. Are there plans to upgrade jet to support django 4 in the near future?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.