代码之家  ›  专栏  ›  技术社区  ›  user2078217

Django项目的架构

  •  1
  • user2078217  · 技术社区  · 10 年前

    我刚刚开始学习Django,我对Django项目的架构感到困惑。

    基本上,我想知道的是设计django应用程序的推荐方法,即:我应该在模型文件、视图文件中放入什么类型的代码,以及在哪里编写验证器等。

    例如,假设在创建注册表单以添加新用户时,我希望确保该用户没有使用数据库中已存在的用户名进行注册。根据我的观察,有三种方法可以做到这一点。

    1. 我可以在models.py文件中定义一个方法,并在从表单获取数据后调用它。
    2. 我可以在views.py文件中定义一个方法并调用该方法。
    3. 我可以在forms.py文件中编写自定义验证器或干净的方法。

    作为一个初学者,我对什么样的方法最好感到困惑。因此,一套基本的规则可以帮助我决定在哪里编写什么类型的代码,这对我有很大帮助。 谢谢

    1 回复  |  直到 10 年前
        1
  •  1
  •   holdenweb    10 年前

    不出所料,一般建议是将视图代码放入 views.py ,您的模型代码 models.py 和您的表单代码 forms.py .

    你有能力将代码或多或少地放在任何你想要的地方,但作为初学者,你最好坚持这些建议。

    因为您希望确保添加的用户不在最好在视图代码中处理的数据库中,但是使用模型方法检查新的 save() s表示重复。这是其他地方是否需要该功能的问题。

    对于新手来说,应用程序架构的问题可能很难解决。《Django的两个勺子》一书中的建议体现了许多最佳实践。