使用 git 时将项目名称设置为 Django 中的参数

Set project name as a parameter in Django when using git

我有一个 Djangocms 应用程序,当我从 克隆它时,我希望从终端输入项目名称git中心.

流量:

我想要这样的东西:

git clone git-link --project_name 其中 project_name 将是存储我的项目名称的参数。这甚至可以实现吗?或者还有其他方法吗?

e.g: git clone some-project --website5 should create a project named website5 instead of website (in this project case)


我会 post 在这里我的项目结构和一些重要文件的样子:

我希望网站像{{ project_name }}一样,但我不知道如何处理参数流。

manage.py

...
from {{ project_name }} import get_project_root_path, import_env_vars
...
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "{{ project_name }}.settings.development")

wsgi.py

from {{ project_name }} import get_project_root_path, import_env_vars
...

base.py

...
WSGI_APPLICATION = '{{ project_name }}.wsgi.application'
...
PROJECT_DIRNAME = '{{ project_name }}'
...
TEMPLATE_DIRS = (
    os.path.join(BASE_DIR, '{{ project_name }}', 'templates'),
)
...

我发现了一些类似的东西 here 但我不知道他在哪里处理 git 参数。

谁能详细解释一下如何实现这一目标以及我应该安装/修改哪些依赖项/文件?

在您链接的 Git 项目中,使用了 startproject 的模板引擎,如文档所述 here

对于您的用例,您可以轻松地使用相同的技术,因为 GitHub 以 zip 文件的形式提供您当前的存储库,它可以用作 startproject 命令的模板。

$ django-admin startproject --template=https://github.com/your_user_name/your_repository_name/archive/development.zip [projectname]

这将使用 your_repository_namedevelopment 分支作为创建新项目的模板。