如何运行克隆的Django项目?

all*_*ain 19 python git django github django-admin

我是初级软件工程师,对Django来说很新.我构建了这个应用程序,正在开发自述文件,向其他人解释如何在自己的机器上分叉,克隆和设置应用程序.我试图重新创建步骤时遇到困难.

这是我制定步骤的顺序:

  1. 分叉并克隆回购
  2. 来源虚拟环境
  3. 点击安装requirements.txt
  4. 获取access_token和secret_key并存储在secrets.sh中
  5. 设置Postgres DB,创建用户和数据库
  6. 迁移(?) - 这是我被卡住的地方!

我尝试迁移应用,但没有要应用的迁移.

我试过'django-admin startproject ig_miner_app.但我收到此错误代码:

"CommandError:/Users/Erin/Desktop/CodeByEAllard/project/instagram_miner/manage.py已经存在,将项目或应用程序覆盖到现有目录中将不会替换冲突的文件"

如果我可以解决这个问题,我应该能够正常运行服务器,对吧?

我确定我错过了一些东西(或许多东西),但不知道它们是什么.我觉得很傻,因为我显然能够首先创建应用程序,但无法弄清楚如何向其他人解释同样的事情!有没有关于如何让服务器运行的建议?

谢谢!

Ber*_*rah 24

首先,您将收到该错误,因为您在与克隆项目相同的目录中启动项目,此目录已包含名称ig_miner_app因此名称冲突的应用程序.

至于其他用户运行项目的步骤,这应该有效.

克隆项目

git clone https://github.com/erinallard/instagram_miner.git 
Run Code Online (Sandbox Code Playgroud)

创建并启动虚拟环境

virtualenv env --no-site-packages

source env/bin/activate
Run Code Online (Sandbox Code Playgroud)

安装项目依赖项:

pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

创建一个名为"secrets.sh"的文件

touch secrets.sh (mac和linux)

MiniWebTool密钥获取秘密并添加到secrets.sh

export SECRET_KEY='<secret_key>'
Run Code Online (Sandbox Code Playgroud)

将secrets.sh添加到.gitignore文件

创建一个postgres数据库并将凭据添加到settings.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'db_name',
        'USER': 'name',
        'PASSWORD': '',
        'HOST': 'localhost',
        'PORT': '',
    }
}
Run Code Online (Sandbox Code Playgroud)

然后运行

python manage.py migrate
Run Code Online (Sandbox Code Playgroud)

创建管理员帐户

python manage.py createsuperuser
Run Code Online (Sandbox Code Playgroud)

然后

python manage.py makemigrations ig_miner_app
Run Code Online (Sandbox Code Playgroud)

为应用程序制作移动版本

然后又跑了

python manage.py migrate
Run Code Online (Sandbox Code Playgroud)

启动开发服务器

python manage.py runserver
Run Code Online (Sandbox Code Playgroud)

并在浏览器中打开localhost:8000以查看该应用程序.

我相信这应该让应用程序在其他人的机器上运行.如果您遇到任何这些步骤,请告诉我,以便进行编辑,如果没有,您可以使用它并添加我可能没有添加的任何其他相关信息.