博客
关于我
怎么使用python打包一个应用?
阅读量:131 次
发布时间:2019-02-27

本文共 3037 字,大约阅读时间需要 10 分钟。

         项目中往往需要将一个应用进行可重复的使用, 我们可以直接借助python对django应用程序进行打包, 打包完成后,再其他模块里引入打包的模块就可以将一个应用到处引入到其他模块里了。

  1. 首先,在你的 Django 项目目录外创建一个名为 django-polls 的文件夹,用于盛放 polls。
  2. 将 polls 目录移入 django-polls 目录。
  3. 创建一个名为 django-polls/README.rst 的文件,包含以下内容:
    =====Polls=====Polls is a Django app to conduct Web-based polls. For each question,visitors can choose between a fixed number of answers.Detailed documentation is in the "docs" directory.Quick start-----------1. Add "polls" to your INSTALLED_APPS setting like this::    INSTALLED_APPS = [        ...        'polls',    ]2. Include the polls URLconf in your project urls.py like this::    path('polls/', include('polls.urls')),3. Run ``python manage.py migrate`` to create the polls models.4. Start the development server and visit http://127.0.0.1:8000/admin/   to create a poll (you'll need the Admin app enabled).5. Visit http://127.0.0.1:8000/polls/ to participate in the poll.
  4. 创建一个 django-polls/LICENSE 文件。选择一个非本教程使用的授权协议,但是要足以说明发布代码没有授权证书是 不可能的 。Django 和很多兼容 Django 的应用是以 BSD 授权协议发布的;不过,你可以自己选择一个授权协议。只要确定你选择的协议能够限制未来会使用你的代码的人。
    下一步我们将创建 setup.cfg``和``setup.py 文件用于说明如何构建和安装应用的细节。关于此文件的完整介绍超出了此教程的范围,但是 setuptools docs 有详细的介绍。创建文件 django-polls/setup.py 包含以下内容:
    [metadata]name = django-pollsversion = 0.1description = A Django app to conduct Web-based polls.long_description = file: README.rsturl = https://www.example.com/author = Your Nameauthor_email = yourname@example.comlicense = BSD-3-Clause  # Example licenseclassifiers =    Environment :: Web Environment    Framework :: Django    Framework :: Django :: X.Y  # Replace "X.Y" as appropriate    Intended Audience :: Developers    License :: OSI Approved :: BSD License    Operating System :: OS Independent    Programming Language :: Python    Programming Language :: Python :: 3    Programming Language :: Python :: 3 :: Only    Programming Language :: Python :: 3.6    Programming Language :: Python :: 3.7    Programming Language :: Python :: 3.8    Topic :: Internet :: WWW/HTTP    Topic :: Internet :: WWW/HTTP :: Dynamic Content[options]include_package_data = truepackages = find:
  5. 默认包中只包含 Python 模块和包。为了包含额外文件,我们需要创建一个名为 MANIFEST.in 的文件。上一步中关于 setuptools 的文档详细介绍了这个文件。为了包含模板、README.rst 和我们的 LICENSE 文件,创建文件 django-polls/MANIFEST.in 包含以下内容:
    include LICENSEinclude README.rstrecursive-include polls/static *recursive-include polls/templates *
  6. 在应用中包含详细文档是可选的,但我们推荐你这样做。创建一个空目录 django-polls/docs 用于未来编写文档。额外添加一行至 django-polls/MANIFEST.in
    recursive-include docs *
  7. 通过 ptyhon setup.py sdist (在 django-polls``目录内)。这将创建一个名为 ``dist 的目录并构建你自己的应用包, django-polls-0.1.tar.gz:
  8. 生成包以后,接下来在django-polls目录外输入命令:

python -m pip install --user django-polls/dist/django-polls-0.1.tar.gz

 成功后,会出现如下提示: 

想卸载应用?

python -m pip uninstall django-polls

 

  找到对应的资源后,将2个文件夹放入到Python的全局环境中:

 

怎么使用?

from polls.models import User

 启动报错? 需要在settings.py文件里添加模块polls:  

INSTALLED_APPS = [    'simpleui',    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles',    'polls']

 

转载地址:http://buwb.baihongyu.com/

你可能感兴趣的文章
Mysql 索引问题集锦
查看>>
Mysql 纵表转换为横表
查看>>
mysql 编译安装 window篇
查看>>
mysql 网络目录_联机目录数据库
查看>>
MySQL 聚簇索引&&二级索引&&辅助索引
查看>>
Mysql 脏页 脏读 脏数据
查看>>
mysql 自增id和UUID做主键性能分析,及最优方案
查看>>
Mysql 自定义函数
查看>>
mysql 行转列 列转行
查看>>
Mysql 表分区
查看>>
mysql 表的操作
查看>>
mysql 视图,视图更新删除
查看>>
MySQL 触发器
查看>>
mysql 让所有IP访问数据库
查看>>
mysql 记录的增删改查
查看>>
MySQL 设置数据库的隔离级别
查看>>
MySQL 证明为什么用limit时,offset很大会影响性能
查看>>
Mysql 语句操作索引SQL语句
查看>>
MySQL 误操作后数据恢复(update,delete忘加where条件)
查看>>
MySQL 调优/优化的 101 个建议!
查看>>