跳转到主要内容

创建可打包Django应用程序的基本框架和脚本

项目描述

Django App Skeleton

版本:

1.0.3

文档:

http://github.com/callowayproject/django-app-skeleton/

下载:

http://pypi.python.org/pypi/django-app-skeleton/

源代码:

http://github.com/callowayproject/django-app-skeleton/

变更日志

  • 1.0.3
    • 错误修复

  • 1.0.2
    • Windows兼容性

  • 1.0.1
    • 更新示例应用程序,使其代码与Django更同步

  • 1.0
    • 默认配置文件 .djas

    • 创建虚拟环境现在是可选的
      • 添加了用于使用虚拟环境的命令行参数

    • create_app 已重命名为 create_pkg

    • 应用程序框架与Django的 startapp 命令兼容

    • 大量代码调整,应更容易阅读和调试

查看所有更改:https://github.com/callowayproject/django-app-skeleton/pull/6

生成可打包的Django应用程序

create_pkg.py 使用多个变量在“模板”目录中进行替换。默认模板目录包含并称为“skel”。

运行脚本

首先,克隆此存储库或使用 pip 安装此包

$ pip install django-app-skeleton

脚本为交互式,尽管您可以在调用时指定一些选项。调用脚本就像

python create_pkg.py

脚本将询问它所需的一切。

Package Name: django-coolapp
App Name [coolapp]:
Author [johnnycool]: Johnny Cool
Author Email [johnnycool@example.com]:
Destination DIR [/path/to/package/destination]:
Template DIR [/path/to/package/template]:
Use Virtualenv [n]: y
Virtualenv Name [coolapp]:

您可以在调用脚本时指定一些或所有选项。

命令行选项

以下是为 create_pkg.py 脚本提供的可能命令。如果任何值存在,则不会提示其值。

-a, --author

作者名称。

-e, --email

作者电子邮件。

-p, --package

已安装包的名称,例如“django-coolapp”。

-n, --name

应用程序名称,例如“coolapp”。

-i, --use-venv

是否创建虚拟环境

-v--virtenv

要创建的虚拟环境名称。如果使用 –use-venv 参数为 y,则只使用相对路径。

-d--dest

新包放置的位置。相对路径将被识别。

-t--template

用于创建新应用的包模板。相对路径将被识别。

默认命令选项

当脚本首次运行时,会提示您输入值,或者如果通过命令行参数提供,则将一些值设置为默认值。

位于 ~/.djas 的配置文件被创建。以下是一个示例配置。

[main]
author = Johnny Cool
author_email = johnnycool@example.com
destination_dir = /path/to/package/destination
template_dir = /path/to/package/template
use_venv = n

仅使用应用骨架

如果您只想使用 app 骨架,可以使用以下命令

$ django-admin.py startapp --template=/path/to/django-app-skeleton/skel/app_name

变量替换

脚本创建了一些替换变量,它使用这些变量替换文件名和文本文件中的内容。如果您想创建一个自定义的包模板,以下是在骨架中为每个文件提供的可能变量。

app_name

-n--name应用程序名称 的答案提供的名称。

pkg_name

-p--package包名称 的答案提供的名称。默认值是 APP_NAME 去掉 django-

pkg_author

-a--author作者 的答案提供的值。默认值是当前用户名。

pkg_author_email

-e--author_email作者邮箱 的答案提供的值。

secret_key

用于 settings.py 文件中的随机生成的字符字符串。

venv

-v--virtenv虚拟环境名称 的答案提供的名称。默认值是 APP_NAME

通过将其包围在 {{}} 之间来引用这些变量,例如 {{app_name}}。以下是从 setup.py 文件的一个示例。

setup(
    name = "{{app_name}}",
    version = __import__('{{pkg_name}}').get_version().replace(' ', '-'),
    url = '',
    author = '{{pkg_author}}',

其他注意事项

提供的 example(skel/app_name/example/)应用程序演示了如何在项目中引用您的新应用程序。为了澄清,项目名称指的是由 create_pkg 脚本创建的父目录,如果未使用 -d 开关提供,则应用名称指的是您的初始应用程序名称、开发目录等。您会发现后者如预期的那样在 example/settings.py 文件中填充。

注意:在项目和应用都使用相同名称的情况下,请不要被此混淆——除非您故意更改一些相关设置,否则只有应用名称有效。

贡献者

  • 埃里克·弗罗伦萨诺

  • 科里·奥尔特

  • 何塞·索阿雷斯

  • 贾斯汀·奎克

  • 亚当·帕特森

  • 本·马戈利

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

django-app-skeleton-1.0.4.tar.gz (247.8 kB 查看哈希值)

上传时间

由以下支持