我刚刚开始学习Django,我对django项目的架构感到困惑。
基本上我想知道的是设计 django 应用程序的推荐方法,即:我在模型文件、视图文件中放入什么类型的代码以及我在哪里编写验证器等。
例如,假设在创建注册表以添加新用户时,我想确保该用户不使用数据库中已存在的用户名进行注册。根据我的观察,有三种方法可以做到这一点。
- 我可以在 models.py 文件中定义一个方法,并在从表单中获取数据后调用它。
- 我可以在 views.py 文件中定义一个方法并调用该方法。
- 我可以在 forms.py 文件中编写自定义验证器或干净方法。
作为初学者,我对哪种方法是最好的感到困惑。因此,要遵循的一组基本规则可以帮助我决定在哪里编写哪种类型的代码,这将对我有很大帮助。谢谢
出所料,一般建议是将您的视图代码放在views.py
中,您的模型代码放在models.py
中,您的表单代码放在forms.py
中。
你可以或多或少地将代码放在你想要的地方,但作为初学者,你最好坚持这些建议。
由于您希望确保添加的用户尚未在数据库中,因此最好在视图代码中处理,因此原则上使用模型方法检查新save()
是否重复没有任何问题。这是在其他任何地方是否需要该功能的问题。
对于新手来说,应用程序架构问题可能很困难。"两勺Django"一书中的建议体现了许多最佳实践。