如何创建页面以添加相关实例?

时间:2019-04-17 17:34:48

标签: django django-models django-forms django-views django-urls

例如,我有2个模型:Link和LinkCollection。 LinkCollection具有标题,用户等,将用于对链接实例进行分组。例如:Django链接->链接到第1页,链接到第2页...,Python软件包->链接到pckg第1页...

我考虑过要做类似的事情:

links/collections/<slug:link_collection>/add_link/

并在视图中:

def form_valid(self, form):
    kwargs = super().get_context_data(**kwargs)
    collection_slug = kwargs["link_collection"]
    collection = LinkCollection.objects.get(slug="collection_slug")
    form.instance.collection = collection
    form.instance.user = self.request.user
return super().form_valid(form)

这将添加实例链接,该实例链接由Django的CreateView处理,并从子弹中获取集合。但是我认为这存在一些问题。例如,由于该应用程序将与身份验证一起使用,因此用户可能尝试添加从其他用户的集合中获取子弹。

最好的方法是什么?

0 个答案:

没有答案