Python 如何在django应用程序中查看用户选择的数据库中的项目?

Python 如何在django应用程序中查看用户选择的数据库中的项目?,python,django,django-rest-framework,django-views,Python,Django,Django Rest Framework,Django Views,我有一个模型orders,用于存储用户在餐厅点的菜。我想创建一个视图,使我能够在网格中的主页上显示数据库中可用的每个项目 然后,当用户单击其中任何一个项目时,它会将其带到一个包含该项目更多信息的新页面。 如何设置视图的逻辑,以了解用户单击的项目 好的,我建议您使用基于类的视图。像ListView和DetailView这样的视图将适合您的用例 带有Listview的views.py如下所示: from django.views.generic import ListView, Deta

我有一个模型
orders
,用于存储用户在餐厅点的菜。我想创建一个视图,使我能够在网格中的主页上显示数据库中可用的每个项目

  • 然后,当用户单击其中任何一个项目时,它会将其带到一个包含该项目更多信息的新页面。 如何设置视图的逻辑,以了解用户单击的项目

    • 好的,我建议您使用基于类的视图。像ListView和DetailView这样的视图将适合您的用例

      带有Listview的
      views.py
      如下所示:

          from django.views.generic import ListView, DetailView
          from .models import Items
          
          class ItemsList(ListView):
              model = Items
              context_object_name = 'items_list'
              template_name = "menu/index.html" # Location of the template
      
      
          class ItemDetailList(DetailView):
              model = Items
              context_object_name = 'item'
              template_name = "menu/item.html" # Location of the template
      
      urls.py
      在同一个应用程序文件夹中,记住将其包含在project urls.py中

      从django.url导入路径

      from .views import ItemsList, ItemDetailList
      urlpatterns = [
        path("", ItemsList.as_view(), name="menu"),
        path("item/<int:pk>/", ItemDetailList.as_view(), name="item_detail"),
      ]
      
      from.views导入项目列表,项目详细列表
      URL模式=[
      路径(“,ItemsList.as_view(),name=“menu”),
      路径(“item//”,ItemDetailList.as_view(),name=“item_detail”),
      ]
      
      在模板中,您可以使用上下文\对象\名称来引用对象,在列表视图中,上下文\对象\名称是
      项目\列表


      在带有
      的详细视图路径中,您正在传递所引用对象的主键,然后在模板中引用该主键,该模板将显示有关该项的信息

      是否尝试了任何代码?欢迎使用堆栈溢出。这不是我们在这里的运作方式。我们希望您告诉我们并向我们展示您的尝试,然后我们会帮助您解决具体问题。我们不解决家庭作业。非常感谢你的帮助!