Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在/auth1/Timings/2找不到Django页面/_Django_Django Rest Framework_Django Views - Fatal编程技术网

在/auth1/Timings/2找不到Django页面/

在/auth1/Timings/2找不到Django页面/,django,django-rest-framework,django-views,Django,Django Rest Framework,Django Views,我知道我的URL有问题。但是我想不出来 models.py class Restaraunt(models.Model): name=models.CharField(max_length=50,blank=True,null=True) class Schedule(models.Model): restaraunt=models.ForeignKey(Restaraunt, on_delete=models.CASCADE,related_name='restaraunt

我知道我的URL有问题。但是我想不出来

models.py

class Restaraunt(models.Model):

    name=models.CharField(max_length=50,blank=True,null=True)

class Schedule(models.Model):
    restaraunt=models.ForeignKey(Restaraunt, on_delete=models.CASCADE,related_name='restaraunt_name')
    #days=models.CharField(choices=DAYS,max_length=255)
    opening_time=models.TimeField(auto_now=False,auto_now_add=False)
    closing_time=models.TimeField(auto_now=False,auto_now_add=False)
    
    def __str__(self):
        return str(self.restaraunt)

class Restarasunt(viewsets.ViewSet):

    def create(self,request):
        try:
            name=request.data.get('name')
            if not name:
                return Response({"message": "name is rerquired!","success":False},
                            status=status.HTTP_200_OK )
            res_obj=Restaraunt()
            res_obj.name=name
            print(res_obj.name)
            res_obj.save()
            return Response("Restaurant addedd successfully")            
        except Exception as error:
            traceback.print_exc()
            return Response({"message":str(error),"success":False},status = status.HTTP_200_OK)

class ScheduleViewSet(viewsets.ViewSet):

    def create(self,request,pk):
        try:
            res_obj=Restaraunt.objects.filter(pk=pk)
            print('hie',res_obj)
            data=request.data
            opening_time=data.get('opening_time')
            closing_time=data.get('closing_time')
            
            sce_obj=Schedule()
            sce_obj.opening_time=opening_time
            sce_obj.closing_time=closing_time
            sce_obj.restaraunt=res_obj
            sce_obj.save()

            
            
            return Response("")            
        except Exception as error:
            traceback.print_exc()
            return Response({"message":str(error),"success":False},status = status.HTTP_200_OK)
url.PY

from rest_framework.routers import DefaultRouter

from auth1 import views

router=DefaultRouter()


router.register(r'retaraunt', views.Restarasunt, basename='Restarasunt')

router.register(r'Timings', views.ScheduleViewSet, basename='ScheduleViewSet')

urlpatterns = router.urls
如中所示,您需要为类添加
retrieve
方法

class用户视图集(viewsets.ViewSet):
"""
用于列出或检索用户的简单视图集。
"""
def列表(自我、请求):
queryset=User.objects.all()
serializer=UserSerializer(queryset,many=True)
返回响应(serializer.data)
def检索(自我、请求、主键=无):
queryset=User.objects.all()
user=get\u object\u或\u 404(queryset,pk=pk)
serializer=UserSerializer(用户)
返回响应(serializer.data)

我不认为create视图应该与“pk”一起使用。您能否尝试从request.data获取“pk”值并使用它获取重启对象

将此行更改为
res\u obj=restarunt.objects.filter(pk=pk)
as
res\u obj=restarunt.objects.get(pk=pk)
。您试图只获取一条记录,但筛选器返回queryset。@adnankaya仍然得到相同的错误,找不到路径,我是否也需要将pk传递到其他位置?伙计,它正在更新方法中运行,postman中的put方法中运行