Django和Eclipse,制作一个可移植的项目
我喜欢Eclipse有很多原因。其中之一是,当我在做一个java项目时,我可以复制粘贴我的项目或重命名它,以创建一个新项目,它将更新所有项目的名称 我正试图为django项目做类似的事情 我可以使用以下代码设置APPNAME变量Django和Eclipse,制作一个可移植的项目,django,eclipse,Django,Eclipse,我喜欢Eclipse有很多原因。其中之一是,当我在做一个java项目时,我可以复制粘贴我的项目或重命名它,以创建一个新项目,它将更新所有项目的名称 我正试图为django项目做类似的事情 我可以使用以下代码设置APPNAME变量 APPNAME = os.path.basename(os.path.dirname(__file__)) 然后我可以将它导入任何需要知道应用程序名称的文件中。然而,这不是一个理想的解决方案,但它适用于我的settings.py文件以及我的url.py文件 它不适
APPNAME = os.path.basename(os.path.dirname(__file__))
然后我可以将它导入任何需要知道应用程序名称的文件中。然而,这不是一个理想的解决方案,但它适用于我的settings.py文件以及我的url.py文件
它不适用于我需要从某个地方导入某些内容的情况,例如:
from myproject.someapp import forms
django/python有没有办法知道“myproject”是什么?或者我可以使用与当前应用相关的导入语句吗
或者有更好的方法来复制django项目
编辑:我想我还必须处理一些数据库依赖关系。我遵循一些规则来保持我的应用程序的可移植性。我将在下面列出它们,希望有人觉得它们有用
,而不是从project.app执行。
李>
在#1之后,我始终仅从应用程序导入。这意味着我可以在其他项目中重用我的应用程序,而无需更改应用程序或其他相关应用程序中的导入语句
如果您坚持使用#1和#2,通常可以轻松地复制和粘贴项目。您仍然需要修改settings.py
。在哪里更改PYTHONPATH?谢谢我在这里读了一篇文章:但上面说我需要为我的应用程序创建一个“应用程序”文件夹。如果可能的话,我不想这样做。我是在我的settings.py中这样做的:PROJECT\u ROOT=os.path.dirname(file)sys.path.insert(0,os.path.join(PROJECT\u ROOT,“apps”))并将我的所有应用程序放在名为apps的文件夹中,以便我的项目结构为djangoproject1-->apps-->appname,但当我从appname import*执行导入操作时,无法解析任何导入,并且apps文件夹具有init.py文件