Python 如何运行克隆的Django项目?
我是一名初级软件工程师,对Django很陌生。我创建并正在编写一个自述文件,向其他人解释如何在他们自己的机器上分叉、克隆和安装应用程序。我在尝试重新创建步骤时被卡住了 这是我制定步骤的顺序:Python 如何运行克隆的Django项目?,python,django,git,github,django-admin,Python,Django,Git,Github,Django Admin,我是一名初级软件工程师,对Django很陌生。我创建并正在编写一个自述文件,向其他人解释如何在他们自己的机器上分叉、克隆和安装应用程序。我在尝试重新创建步骤时被卡住了 这是我制定步骤的顺序: 分叉并克隆回购协议 源虚拟环境 Pip安装要求.txt 获取访问令牌和密钥并存储在secrets.sh中 设置Postgres数据库,创建用户和数据库 迁移(?)-这就是我被卡住的地方 我尝试迁移应用程序,但没有要应用的迁移 我尝试了django admin startproject ig_miner_应用
CommandError:/Users/Erin/Desktop/codebyellard/project/instagram\u miner/manage.py已存在,将项目或应用程序覆盖到现有目录不会替换冲突文件
如果我能解决这个问题,我应该可以像正常一样运行服务器,对吗
我肯定我错过了一些东西(或很多东西),但不知道它们是什么。我觉得自己很傻,因为很明显,我一开始就能够创建这个应用程序,但却不知道如何向其他人解释如何做同样的事情!对于如何让服务器运行有什么建议吗
谢谢大家! 尝试将应用程序名称传递给
migrate
命令:
manage.py migrate ig_miner_app
首先,您会收到该错误,因为您正在克隆项目所在的同一目录中启动项目,该目录已包含名为
ig\u miner\u app
的应用程序,因此存在名称冲突
至于其他用户运行项目的步骤,这应该是可行的
克隆项目
git clone https://github.com/erinallard/instagram_miner.git
创建并启动虚拟环境
virtualenv env --no-site-packages
source env/bin/activate
安装项目依赖项:
pip install -r requirements.txt
创建一个名为“secrets.sh”的文件
touch secrets.sh
(mac和linux)
从key中获取一个秘密并添加到secrets.sh
export SECRET_KEY='<secret_key>'
然后跑
python manage.py migrate
创建管理员帐户
python manage.py createsuperuser
然后
为应用程序进行迁移
然后再跑
python manage.py migrate
启动开发服务器
python manage.py runserver
并在浏览器上打开localhost:8000以查看应用程序
我相信这会让应用程序在其他人的机器上运行起来。如果您在这些步骤中遇到任何问题,请告诉我,以便我进行编辑,如果没有,您可以使用它并添加我可能没有添加的任何其他相关信息。正如您所说,一旦您克隆了repo,您就必须安装这些要求
pip install -r requirements.txt
之后,您必须配置数据库。将详细信息添加到settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'db_name',
'USER': 'name',
'PASSWORD': '',
'HOST': 'localhost',
'PORT': '',
}
}
一旦完成并掌握了密钥和秘密,就必须进行迁移,然后再进行迁移
将cd放入应用程序目录并运行
python manage.py makemigrations
为已在克隆的代码中定义的模型创建移植文件。之后你就得跑了
python manage.py migrate
应用实际上创建数据库表的迁移
现在,如果要对模型进行任何更改或添加额外的模型或字段,则必须再次运行最后两个命令。Hey@allardbrain,欢迎来到精彩的开发世界^ ^ 虽然我希望这个问题现在已经解决了,但如果可以的话,让我们很快再谈一谈——我相信其他人已经犯了,而且目前正在犯这个错误 我尝试了“django admin startproject ig_miner_应用程序”。但是我得到了这个错误代码: CommandError:“yadda yadda yadda yadda…” Django实际上有惊人的文档。背后的人实际上是作家和记者,而不是典型的CS人 我想说的是,当学习新东西时,阅读文档;运行“待办事项”应用程序教程。这就是为什么
django-admin startproject
如果您正在提取预先存在的应用程序的工作副本,则已经满足了这一要求。你应该首先关注这个文件
requirements.txt
这是devdependency声明其需求的地方,如果您愿意的话,类似于您的基本需求
package.json
不管怎么说,我这么说只是因为我在职业生涯的头几年都很固执,经常发现自己在浏览文档,最后给自己和那些负责监督我笨重屁股的可怜的混蛋们带来了麻烦:-)美好的时光,那些
为大家干杯从GitHub克隆项目后,我将采取以下步骤:
pip3 install virtualenv
virtualenv -p python3 env
source env/bin/activate
pip install django
django-admin startproject <mysite>
python manage.py startapp polls
python manage.py runserver
on terminal: python manage.py makemigrations <app_name>
python manage.py migrate
pip3安装virtualenv
virtualenv-p python3环境
源环境/箱/激活
pip安装django
django管理启动项目
python manage.py startapp轮询
python manage.py运行服务器
终端上:python manage.py makemigrations
python manage.py迁移
这些在我的系统上运行良好 如果venv位于项目目录中,我的IDE似乎会自动激活它,这导致我在从git克隆时不断遇到错误
ModuleNotFoundError:没有名为“”的模块
我必须手动删除原始的venv并创建一个新的虚拟环境,然后运行这些命令。在以下情况下工作得很出色:)
pip安装-r requirements.txt
python manage.py collectstatic
为什么要运行
startproject
?你已经有一个项目了!运行manage.py migrate
时出现了什么错误?我刚刚运行了'startproject',因为我想不出还有什么可以尝试的。这就是我在运行“python manage.py migrate”时遇到的错误:回溯(最近一次调用最后一次):文件“manage.py”,第8行,从django.core.management导入执行从命令行导入错误错误:没有名为django.core.management的模块您激活了虚拟环境吗?哦,是的,virtualenv肯定被激活了。这是我尝试这样做时收到的错误消息:回溯(大多数)
pip3 install virtualenv
virtualenv -p python3 env
source env/bin/activate
pip install django
django-admin startproject <mysite>
python manage.py startapp polls
python manage.py runserver
on terminal: python manage.py makemigrations <app_name>
python manage.py migrate