我需要将现有的桌面python应用程序转换为Django支持的网站。要做到这一点,我可能会有几个Django应用程序,每个应用程序执行某些事情。
我不确定的是在哪里放置每个应用程序的所有现有python文件。每个应用程序将需要几个现有的python文件。对于基本的Django应用程序,大多数程序逻辑都在views.py中。但是,我要转换的桌面应用程序很大,有几个python文件。换句话说,我不能只将整个应用程序转储到Django应用程序的views.py文件中。
我的想法是在views.py中我会调用存储在子目录中的各种现有python文件。我只是不确定在哪里放置所有这些文件的最佳做法是什么?我可以在应用程序中创建一个新文件夹,例如名为'program',它将包含所有python文件。
我认为文件不应该是静态的,因为它应该用于pdf,css等? 它应该进入模板吗?
试图找出这个通常是完成的。如果我没有足够清楚地解释自己,请告诉我。 感谢。
答案 0 :(得分:2)
首先,您可以制作views.py
,models.py
等模块,而不是单个文件。
您还可以添加其他模块,例如core
,helpers
,并将其命名为包含不一定是视图的业务逻辑代码。
例如,我相对较大的django应用程序大致具有以下结构:
my_app
views
__init__.py
example_view_1.py
example_view_2.py
some_module
__init__.py
another_view.py
...
models
(all my app's models)
helpers
(helper modules)
backends
(authentication backends)
forms
(django forms)
third_party
(all third party packages - I use GAE so I must upload them)
答案 1 :(得分:0)
这取决于您在项目中包含的内容。命名约定中有一些固定装置,例如views.py
,models.py
,admin.py
,标准内容,但是通过设置导入到项目中的包有插件(如tasks.py
Celery)。
这一切都取决于你的项目的复杂性。我正在努力工作,以至于我们决定将models.py
分解为模型目录中的几个文件。该目录中的__init__.py
从每个文件中导入模型。
Two Scoops基本上是关于如何编写Django代码的样式指南。我推荐它。
答案 2 :(得分:0)
I might recommend the DjangoGirls or Djangoproject tutorials as long as you bring it up.
Spent a few months looking at Django to find that for the project I was on, while it was highly recommended, it was, in the end, a bit overpowered thus requiring a bit of backfill to code.
I was looking for a smaller scale codeset that Flask ended up performing better but it was also a much quicker prototyping package with what I found on GitHub.