我应该把Django逻辑放在哪里

时间:2018-10-17 12:06:33

标签: django forms view

这是我的表格:

class UploadForm(forms.ModelForm):

    upload_what = forms.URLField()
    upload_what.widget.attrs.update(size = '100')

因此,它变得非常简单,在用户粘贴link之后,我需要检查链接是表示cat还是dog,然后根据此发现我将上传执行某些特定步骤后,数据库中将出现一个新的catdog对象。

我的问题是:

我将所有这些逻辑放在哪里?在viewformmodel中?请记住,catdog模型具有不同的字段,并且在后台需要进行一些处理才能弄清楚这些字段必须填充什么。

我确实读过,这种做法是将所有逻辑放入models(胖模型)中,但是在这里我真的不知道当用户触发{{1}时我将使用哪种模型。 }按钮。

例如,在我的Submit中,它可能看起来像这样:

views.py

2 个答案:

答案 0 :(得分:0)

view.py是Django的逻辑部分。您可以声明基于类的结构,也可以使用众所周知的方法。

The class-based view:

# some_app/views.py
from django.views.generic import TemplateView

class AboutView(TemplateView):
    template_name = "about.html"

The method-based view:

from django.shortcuts import render

def aboutview(request):
   return render(request, 'about.html' )

答案 1 :(得分:0)

view.py是应用程序逻辑的位置,View.py