python - 如何将 Django 项目中的 Controller ( View )分解为内聚文件?

标签 python django

我目前正在学习 Django 网站上的教程。完成以下命令后:

python manage.py startapp 民意调查

它创建以下结构:

polls/
    __init__.py
    models.py
    tests.py
    views.py

当我学习本教程时,我突然想到 View 文件可能会增长到这个巨大的、不连贯的整体文件,其中包含整个 Web 应用程序中的每个操作。

有没有办法将此文件分解为内聚的类或文件?我尝试更改 settings.py 和 url.py 以指向不同的目录,但生成文件结构的脚本似乎在创建文件时创建了一个“ View ”模块,而且我看不到任何方法从脚本更改/覆盖此行为。

最佳答案

您可以按照与此博客条目拆分模型类似的方式 Split View

http://www.nomadjourney.com/2009/11/splitting-up-django-models/

例如

/myapp

    * /views
          o __init__.py
          o bar.py
          o foo.py

在 __init__.py 文件中使用适当的导入语句

这可能适合扩展应用程序。此外, View 的构造方式比模型更灵活,因此您可以执行后端/成员/前端/模块或仅执行 admin_views.py 等。

关于python - 如何将 Django 项目中的 Controller ( View )分解为内聚文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1857427/

相关文章:

python - 如何找出对象无法 JSON 序列化的原因?

django - 预填充 Django(非模型)表单

python - 将字符串附加到 unicode 字符串列表

python - 如何按文件名中包含的整数升序对文件进行排序

python - 属性错误: 'module' object has no attribute 'runTest'

Django 渴望加载多对多

python - 无法 pickle <type 'function' > : attribute lookup __builtin__. 函数失败

python - 如何使图像之间完美匹配?

python - 用一个键在 Python 中旋转一个单词

python - 在 Python Social Auth 中获取 Facebook 用户喜欢