我想将我的模型移动到一个单独的目录,类似于使用 Rails 来减少代码混乱的方式。有什么方法可以轻松做到这一点?
谢谢,科林
我假设您使用的是基本的 webkit,而不是 Django 或其他花哨的东西。在这种情况下,只需创建一个名为 models 的子目录。将您用于模型的任何 python 文件放在此处。在此文件夹中创建一个名为 __init__.py 的空白文件。
然后在你的 main.py 或“控制器”或你有什么,放:
import models
在顶部。
您刚刚创建了一个python 包。
布兰登的回答就是我所做的。此外,我更喜欢 Rails 的每个文件一个模型的自定义。我并不完全坚持它,但这是我的基本模式,特别是因为 Python 倾向于鼓励比 Ruby 更多但更简单的代码行。
所以我所做的就是让模型也成为一个包:
models/
models/__init__.py
models/user.py
models/item.py
models/blog_post.py
在主要的 .py 文件中,我放置了我的基本类定义,可能还有一些辅助函数(Python 的模块系统使快速辅助函数与类定义耦合更加安全)。我__init__.py
把它们缝合在一起:
"""The application models"""
from user import User
from item import Item
from blog_post import BlogPost
这有点多余,但我对命名空间有很多控制权。