Is your client library which support ths JSON:API standard.
Project description
Json API Smart
Is your client library which support ths JSON:API standard specified on JSON:API.
class BaseResource(JsonApiResource):
@staticmethod
def base_url(cls) -> str:
return "http://baseurl.com/"
class People(BaseResource):
id: str = resource_id()
first_name: str = attribute()
class Article(BaseResource):
id: str = resource_id()
title: str = attribute()
number: int = attribute()
some_date: date = attribute(decoder=date.fromisoformat)
some_optional: Optional[int] = attribute()
author: People = relationship()
Query it with:
# http://baseurl.com/articles/101
article = Article.find("101")
article.id # 101
article.title # JSON:API paints my bikeshed!
article.number # 1
article.some_optional # None
article.author.id # "9"
article.author.first_name # "Dan"
Query resources
Call your resources by building chains:
# http://baseurl.com/articles
articles = Article.all()
# http://baseurl.com/articles?price=5
articles = Article.with_params(price=5).all()
# http://baseurl.com/articles?filter[author]=101
articles = Article.where(author=101).all()
# http://baseurl.com/articles/101
articles = Article.find("101")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
json-api-smart-0.0.5.tar.gz
(4.8 kB
view details)
File details
Details for the file json-api-smart-0.0.5.tar.gz.
File metadata
- Download URL: json-api-smart-0.0.5.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/44.0.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7f02e7db207a024e66c4cd8b479052a48d1bd23d01ac393ca73d87a1c12dfa7f
|
|
| MD5 |
0fd4311c83606a5919771f6dcd8c27ac
|
|
| BLAKE2b-256 |
c61a328653d64cc0bf8fee9635256b526bea3666713da8d7df9cba33d85b157c
|