【问题标题】:CreateView and ListView from different apps on the same page.来自同一页面上不同应用的 CreateView 和 ListView。
【发布时间】:2016-03-11 15:04:32
【问题描述】:

我有两个不同的应用程序,食谱和评论。

我在食谱应用程序中有一个 DetailView,它指向 url(r'^(?P<pk>\d+)/$', RecipeDetailView.as_view(), name='recipe-detail'),它也在食谱应用程序 url 文件中。

我的评论应用中的 views.py 文件中也有一个 CreateView。如何将我的评论应用程序中的这个 CreateView 放入上面显示的相同 url 中?我在模板中这样做吗?还是我在配方 views.py 或 urls.py 文件中执行此操作?

我在使用一个应用程序创建视图时没有遇到任何问题,但我在尝试跨应用程序显示视图时被绊倒了。

【问题讨论】:

    标签: python django django-templates django-views


    【解决方案1】:

    首先,忘记这里的应用程序;他们与任何事情无关。应用只是模型和视图的集合,与页面上可以显示的内容没有任何关系。

    您的问题是单个视图专门负责呈现页面。 Django 调用视图以响应特定 URL 的请求,从那里返回的任何内容都将成为页面的内容。无法从一个 URL 调用多个视图。

    相反,您需要考虑以视图从多个位置呈现内容的方式构建代码。有多种方法可以做到这一点,例如包括模板、使用模板标签或上下文处理器、组合基于类的视图等。

    【讨论】:

    • 我想知道这是否是 django 的限制,感谢您的回复,我将研究您提出的其他建议。
    猜你喜欢
    • 2019-02-21
    • 2017-02-13
    • 1970-01-01
    • 2018-04-13
    • 2012-04-12
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 2020-05-15
    相关资源
    最近更新 更多