【问题标题】:Breaking Django views into seperate directories and files将 Django 视图分解为单独的目录和文件
【发布时间】:2011-06-13 13:09:14
【问题描述】:

我对 Django 很陌生,我非常喜欢它。我已将我的应用程序的视图分解为不同的文件,并将它们放在名为 app/views/(view files) 的目录中。

我在视图目录中创建了一个__init__.py 文件,这导致我不得不在我的站点代码中使用myproj.app.views.views。哪个粗的不太好消化。

关于这个的任何想法。或者正在将我的视图目录重命名为其他方式。

谢谢。

【问题讨论】:

  • 如果您有太多视图,需要将它们拆分到不同的文件中,这可能表明您的应用程序做了太多事情。考虑将整个应用拆分为多个应用。

标签: django django-views


【解决方案1】:

只需从__init__.py 中的其他模块导入视图即可。

【讨论】:

  • 所以在__init__.py 里面我只是简单地输入import views ?
  • from .views import view1, view2, ...
【解决方案2】:

我的用户配置文件应用 account 具有三个视图文件:views.pyviews_login.pyviews_profile.py。也许它不是最干净的,但它很好地将account 的三个部分分开,以满足我的需要。我的apps/account/urls.py 因此看起来像这样:

from django.conf.urls.defaults import *

urlpatterns = patterns('',
    (r'^foo1$', 'apps.account.views.foo1'),
    (r'^foo2$', 'apps.account.views.foo2'),
    (r'^bar1$', 'apps.account.views_login.bar1'),
    (r'^bar2$', 'apps.account.views_login.bar2'),
    (r'^baz1$', 'apps.account.views_profile.baz1'),
    (r'^baz2$', 'apps.account.views_profile.baz2'),
)

【讨论】:

  • 谢谢。正如上面的 Skirmantas 所说,我认为我的应用程序中有很多事情要做。它应该分解得更多。
猜你喜欢
  • 1970-01-01
  • 2015-10-03
  • 1970-01-01
  • 2019-04-27
  • 2016-03-23
  • 2013-08-08
  • 2017-01-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多