Gar*_*nzo 2 python django django-class-based-views
刚刚完成一些CBV的工作,并想知道这是不好的风格.通常,您views.py在urls.py该视图中有一个类,在该视图中有一个URL .就像是:
views.py
from django.views.generic.list import ListView
from project.models import Contact
class ContactList(ListView):
model = Contact
Run Code Online (Sandbox Code Playgroud)
urls.py
from django.views.generic.list import ListView
from project.views import ContactList
urlpatterns = [
url(r'contacts/$', ContactList.as_view()),
]
Run Code Online (Sandbox Code Playgroud)
然后是一个显示数据的模板.
但是,如何完全跳过视图代码并在urls.py文件中完成所有操作:
from django.views.generic.list import ListView
from project.models import Contact
urlpatterns = [
url(r'contacts/$', ListView.as_view(model=Contact)),
]
Run Code Online (Sandbox Code Playgroud)
将它全部分组到urls.py文件中的样式是不是很糟糕?我的意思是,它摆脱了多余的代码,views.py所以不是那么好吗?或者这是以牺牲清晰度为代价的减少?
将视图逻辑保留在URLConfs之外要好得多.一眼url(r'contacts/$', ListView.as_view(model=Contact))看上去似乎还可以,但实际上它违反了Django的设计理念:
所以:
| 归档时间: |
|
| 查看次数: |
458 次 |
| 最近记录: |