vitalik/django-ninja#444 (comment)
Para salvar FK automaticamente no django-ninja renomeie o field
para field_id
no back e no front.
vitalik/django-ninja#444 (comment)
Para salvar FK automaticamente no django-ninja renomeie o field
para field_id
no back e no front.
from typing import List | |
from ninja import ModelSchema, Router | |
from ninja.security import django_auth | |
from .models import Product | |
router = Router() | |
class ProductSchemaIn(ModelSchema): | |
category_id: int # FK é salvo automaticamente. | |
class Config: | |
model = Product | |
model_fields = ('title', 'price') | |
@router.post('product/', auth=django_auth, response=ProductSchema) | |
def create_product(request, payload: ProductSchemaIn): | |
return Product.objects.create(**payload.dict()) |
const data = document.currentScript.dataset | |
const csrftoken = data.csrf | |
const baseUrl = '/api/v1/product/' | |
const headers = { "Content-Type": "application/json", "X-CSRFToken": csrftoken } | |
saveData() { | |
// Remove category e associa o restante a bodyData | |
// Transforma category em category_id para salvar automaticamente no Django-ninja. | |
const { category: _, ...bodyData } = { | |
...this.editItem, | |
category_id: this.editItem.category | |
} | |
fetch(`${baseUrl}product/`, { | |
method: "POST", | |
headers: headers, | |
body: JSON.stringify(bodyData), | |
}) | |
} |