私はdjangoが初めてで、SQL dbをデフォルトとして使用しますが、それをmongoldbにも接続します。私のmodels.pyで私は
from mongoengine import Document, EmbeddedDocument, fields
class ToolInput(EmbeddedDocument):
name = fields.StringField(required=True)
value = fields.DynamicField(required=True)
class Tool(Document):
label = fields.StringField(required=True)
description = fields.StringField(required=True, null=True)
inputs = fields.ListField(fields.EmbeddedDocumentField(ToolInput))
私の serializers.py には次のものがあります:-
from .models import Tool
from rest_framework_mongoengine import serializers as mongoSerializers
from .models import Tool
class ToolSerializer(mongoSerializers.DocumentSerializer):
class Meta:
model = Tool
fields = '__all__'
私のapi.pyには次のものがあります:-
from .serializers import ListSerializer, CardSerializer, ToolSerializer
from rest_framework.generics import ListAPIView
from rest_framework_mongoengine import viewsets as mongoViewsets
from .models import List, Card, Tool
class ToolApi(mongoViewsets.ModelViewSet):
#lookup_field = 'id'
queryset = Tool.objects.all()
serializer_class = ToolSerializer
私のurls.pyには次のものがあります:-
from django.conf.urls import include, url
from .api importToolApi
urlpatterns = [
url(r'Tool', ToolApi.as_view({'get': 'Tool'})),
]
この API をヒットすると、エラーが表示されます:-「ToolApi」オブジェクトには属性「ツール」がありません
以前は、rest_framework.generics の ListAPIView クラスを使用して、SQL からデータにアクセスするための API を作成していました。ToolApi に ModelViewSet を使用したためのエラーですか?
PS - mongodb と sql の両方を使用する git プロジェクトを紹介してください