Comments (5)
We've changed semantics for "integration", so we have Starlette integration, Flask integration, etc. ect.
As for integration with ORM, this should live in resolvers layer, and writing project that autogenerates Ariadne GraphQL API from SQLAlchemy tables may be fun project for somebody, but I feel thats out of scope for us. If you want to feed your API with data from SQLAlchemy (or any such tech), run your queries in resolvers - they are made for this purpose ;)
from ariadne.
Tricky question. ;)
When we say "Django/Starlette" bindings, we think primarily of boilerplate that lets you add GraphQL view/controller for query execution, playground or maybe few extra utils for pagination, mutations and such.
SQLAlchemy is DBAL/ORM. graphene-sqlalchemy makes a lot of sense here, because Graphene generates GraphQL types and schema on initialization. They can introspect your models and generate types from them. They are doing same thing in graphene-django where they introspect Django's models for same result.
In Ariadne this is different, because shape of schema is decided by developer, and library only parses it and binds python functions to it. So I don't see what we could provide here? Abstractions for connections/mutations feel like very little.
I'll label this as decision needed/question and let this hang around for a while to let people discuss this.
from ariadne.
If you only care about having access to a database (and not magically adapting the schema to contain all tables) you can take a look at how https://github.com/patrys/starlette-ariadne uses GINO.
from ariadne.
Ah, so "bindings" is less about data fetching, and more about integration with the Django Channels and Starlette ASGI-compatible frameworks?
EDIT: And if so, is Quart also similarly on the radar?
from ariadne.
With ASGI app merged any ASGI framework should work out of the box.
from ariadne.
Related Issues (20)
- Support passing Python `Enum` directly to `make_executable_schema`
- GraphQLTransportWSHandler sends invalid errors message breaking `graphql-ws` clients on error (should be an array) HOT 3
- Add mypy test for passing `Enum` directly to `make_executable_schema`
- Federation error HOT 2
- Mounted App (on Starlette) Doesn't Check Path when Serving Requests HOT 5
- Query filter with default `null` filter causes error HOT 4
- Query cost validation is skipping `InlineFragmentNode`
- GraphiQL Explorer error message for subscriptions after switching to graphql-ws HOT 2
- GraphiQL is using react development HOT 1
- Replace ApolloTracing with simple tracing extension HOT 3
- Rename main branch to `main` HOT 1
- Feature request: cache query parsing and validation HOT 10
- Breaking changes to Extension not noted in 0.20 changelog HOT 6
- Reference resolver HOT 2
- GraphiQL is not rendering (Explorer plugin error)
- Custom JSON implementation HOT 2
- Cannot install 0.15 HOT 2
- Expose all graphiql parameters HOT 1
- Union as directive argument HOT 4
- No way to send custom error from `on_connect` when using GraphQLTransportWSHandler
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ariadne.