【发布时间】:2015-05-05 20:57:35
【问题描述】:
我是 Django Rest 框架的新手。为了学习,我正在创建一个类 Num
from django.db import models
from pygments.lexers import get_all_lexers
from pygments.styles import get_all_styles
LEXERS = [item for item in get_all_lexers() if item[1]]
LANGUAGE_CHOICES = sorted([(item[1][0], item[0]) for item in LEXERS])
STYLE_CHOICES = sorted((item, item) for item in get_all_styles())
class Num(models.Model):
num1=models.IntegerField(default=-1)
num2=models.IntegerField(default=-1)
created = models.DateTimeField(auto_now_add=True)
class Meta:
ordering=('created',)
serializers.py 为
from django.forms import widgets
from rest_framework import serializers
from num.models import Num, LANGUAGE_CHOICES, STYLE_CHOICES
class NumSerializer(serializers.ModelSerializer):
class Meta:
model = Num
fields = ('id','num1', 'num2', 'created')
网址重定向如下:
from django.conf.urls import patterns, url
from rest_framework.urlpatterns import format_suffix_patterns
from num import views
urlpatterns = [
url(r'^num/$', views.NumList.as_view()),
url(r'^num/(?P<pk>[0-9]+)$', views.NumDetails.as_view()),
url(r'^num/(?P<id>[0-9]+)/add/$', views.AddNum.as_view(),name='AddNum'),]
urlpatterns = format_suffix_patterns(urlpatterns)
我的views.py如下:
from django.http import Http404
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import status
from num.models import Num
from num.serializers import NumSerializer
from rest_framework import generics
class NumList(generics.ListCreateAPIView):
#queryset=Num.objects.all()
queryset=Num.objects.all()
serializer_class=NumSerializer
class NumDetails(generics.RetrieveUpdateDestroyAPIView):
"""
Retrieve, update or delete a snippet instance.
"""
queryset=Num.objects.all()
serializer_class=NumSerializer
class AddNum(generics.ListAPIView):
model=Num
serializer_class=NumSerializer
def get_queryset(self):
#queryset=super(AddNum,self).get_queryset()
n= Num.objects.filter(id=self.kwargs.get('id'))
content={'data':n['num1']+n['num2']}
return Response(content)
我正在尝试创建一个名为 AddNum 的函数,它将添加对应于任何 id 的 num1 和 num2。 请帮帮我。
【问题讨论】:
标签: python django django-models django-rest-framework