首页>>后端>>Python->django商用如何(django 配置)

django商用如何(django 配置)

时间:2023-12-11 本站 点击:0

导读:很多朋友问到关于django商用如何的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!

开发个人网站 Node.js 和 Django 该如何选择?

我的理解:

node.js集成了v8解析引擎、服务器等可以说是一个开发环境;相当于 php + apache.选择了node.js后还要选mvc框架(一般都是express)

Django 是一个CMS(网站内容管理系统),与joomla discuz wordPress相似,是一个程序,一般需要 有 php + apache + mysql 这样的开发环境才能运行,Django 的运行环境是Python + apache + mysql(PS: 服务器 数据库 有多种选择,具体看cms支持的运行环境).

所以说node.js 让javascript变成一后台语言了,如果说纠结于选择 javasript还是 Python作为后台语言还说的通, 纠结于 node.js 与 Django 就很奇怪了。

而“基于SAE/BAE/ACE平台”, 题主选用的是哪个平台?

SAE (新浪云计算平台) 并不支持 node.js, 如果你选了它 不用纠结了, 直奔 Django 吧!

如何独立使用django的数据库访问功能

1. 安装Django

[plain] view plain copy

cd Django-1.4

python setup.py install

2. 安装postgresql的客户端:

[plain] view plain copy

sudo apt-get install -y postgresql-client-9.1 python-psycopg2

3. 新建project:

[plain] view plain copy

django-admin.py startproject myproject

4. 在myproject下新建app:

[plain] view plain copy

python manage.py startapp myapp

4. 新增环境变量:

编辑/etc/profile文件,在末尾加入以下语句:

[plain] view plain copy

span style="color:#FF0000;" export PYTHONPATH=$PYTHONPATH:/home/yc/src/myproject

export DJANGO_SETTINGS_MODULE=myproject.settings/span

5.

假设数据库已经由Django的另一个应用(名称为otherapp)建好,数据库类型是postgresql,名称为mydb,位于

192.168.1.23。见好的数据库中有一个表,名称是otherapp_user,则将otherapp/models.py拷贝到myapp

/models.py。

注意检查models.py下的class user类的class Meta:部分,如果没有applabel标签,则要加上:app_label='otherapp'

再修改/home/yc/src/myproject下的settings.py文件,如下:

[plain] view plain copy

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.postgresql_psycopg2', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.

'NAME': 'mydb', # 'vps2db_test1' Or path to database file if using sqlite3.

'USER': 'postgres', # Not used with sqlite3.

'PASSWORD': '123', # Not used with sqlite3.

'HOST': '192.168.1.23', # Set to empty string for localhost. Not used with sqlite3.

'PORT': '5432', # Set to empty string for default. Not used with sqlite3.

}

}

[plain] view plain copy

INSTALLED_APPS = (

'django.contrib.auth',

'django.contrib.contenttypes',

'django.contrib.sessions',

'django.contrib.sites',

'django.contrib.messages',

'django.contrib.staticfiles',

'span style="color:#FF0000;"myapp/span',

)

6. 在myapp目录下编写测试程序

[python] view plain copy

from models import user

if __name__=="__main__":

try:

u = user.objects.get(id=user_id)

except user.DoesNotExist:

print "user not exist)

return None

else:

return u

如何开发合格的 Python/Django 第三方 Package

合格的Python/Django第三方package, 以下是一个为发布新的Python/Django package准备的Checklist.

1. 目的

你的package应当能做一件事情, 并且能把它做得很好. package名字应当具有描述性. package仓库的根目录应当以"django-"开头(如果是Django的package的话), 方便其他用户查找.

如果该package的部分功能需要借助其他Python package完成, 那么应当将其他package加入到依赖信息中.

2. 范围

你的package功能范围应该专注于一个小的任务(就像UNIX的原则一样), 这意味着该package的逻辑紧凑, 用户也更容易修改或取代这一package.

3. 文档

没有文档的package只能说是测试package, Docstring无法代替说明文档.

我们可以借助ReStructuredText和Sphinx这样优秀的工具撰写文档. 这些文档应到放在 上, 并使用webhooks来随时更新.

package的依赖, 安装说明,都应当纳入文档中.

4. 测试

你的package应当包含测试代码. 测试代码能提高可靠性, 更能方便其他贡献者提交代码. 如果有必要, 应当将如何运行测试纳入文档中. 如果你和你的贡献者们能在提交pull request运行测试, 那必定会带来更高质量的代码.

5. 维护

你的package应当定期维护更新. 每次更新代码库中的代码时, 如果有必要, 不要忘了上传到Python Package Index中.

6. 社区

良好的package一般都会得到社区的贡献者帮助提交的代码和补丁, 所有贡献者的名单应当列在CONTRIBUTORS或AUTHORS文档中.

尽力管理由你领导的package产生的社区. 如果你的代码被fork了, 应当尽力给与关注, 试着将部分内容merge到你的package中. 如果该fork与原来的package功能上已有分化, 则应提醒该fork开发人员重新命名该fork.

7. 模块化

你的package应当能简单的被应用到任何Django项目中(针对Django package), 并且不会代替其他核心部件(templates, ORM等). 尽量减少对其他package的影响.

8. PyPI

对于 major 和 minor release, 应该将其放置到PyPI, 方便其他开发人员下载获得源代码. 对各release使用适当的版本号.

9. 依赖

package中所依赖的其他package应当使用宽松版本号写入requirements中, 而不是用绝对版本号:

# requirements

# 不使用 Django==1.5.2, 而是用

Django=1.5,=1.2.3,

10. 版本号

对于Python/Django package, 可以参考PEP 386对package进行版本编号, 形式如A.B.C:

A代表着major release, B代表minor relsean, C代表bugfix release.

11. 名字

package的名字至关重要. 恰当的命名使得package容易被发现.

12. 使用协议 License

每个package都应当有合适的License, 对于没有特殊的package可以使用BSD或MIT license, 这两个license允许大多数商用和非商用. 将License的内容拷贝黏贴到LICENSE文档中.

13. 代码

你的package中的代码应当清晰易懂, 不要使用奇怪的python语法.

14. URL Namespaces

对于Django package, 为了避免与其他package的url设置重提, 可以使用的URL namespaces.

Django开发的网站如何被百度更好收录

1.在做网站之前一定要选好一个服务器,一个服务器的稳定,能帮助你的网站能够快速的收录,如果别人访问你的网站根本就进不去,那就别想被收录了。

2.文章一定要是原创度比较高的文章,一篇文章它的伪原创度一定要大于百分之七十。

3.一定要做好三大标签的撰写,其中标题描述和关键词一定要符合用户体验,并且与企业的品牌,企业的产品都要符合,这样才能使你的网站优化的更好。

4.注册百度站长平台,然后通过链接提交把每天发布的文章提交到百度站长平台上面,就可以使百度蜘蛛有机会抓取那个网页,这样就能够快速的收录网站内容。

django的架构设计

Django是一个基于MVC构造的框架。但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),称为 MTV模式。它们各自的职责如下: 层次 职责 模型(Model),即数据存取层 处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。 模板(Template),即表现层 处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。 视图(View),即业务逻辑层 存取模型及调取恰当模板的相关逻辑。模型与模板之间的桥梁。 从以上表述可以看出Django 视图不处理用户输入,而仅仅决定要展现哪些数据给用户,而Django 模板 仅仅决定如何展现Django视图指定的数据。或者说, Django将MVC中的视图进一步分解为 Django视图 和 Django模板两个部分,分别决定 “展现哪些数据” 和 “如何展现”,使得Django的模板可以根据需要随时替换,而不仅仅限制于内置的模板。

至于MVC控制器部分,由Django框架的URLconf来实现。URLconf机制是使用正则表达式匹配URL,然后调用合适的Python函数。URLconf对于URL的规则没有任何限制,你完全可以设计成任意的URL风格,不管是传统的,RESTful的,或者是另类的。框架把控制层给封装了,无非与数据交互这层都是数据库表的读,写,删除,更新的操作.在写程序的时候,只要调用相应的方法就行了,感觉很方便。程序员把控制层东西交给Django自动完成了。 只需要编写非常少的代码完成很多的事情。所以,它比MVC框架考虑的问题要深一步,因为我们程序员大都在写控制层的程序。现在这个工作交给了框架,仅需写很少的调用代码,大大提高了工作效率。

Django开发网站要多久

django不难,难在网站的美化和用户体验优化。我目前学django一个月,开发一个视频类网站,算是做了一个demo版本了,各功能可以正常运行,但是遇到以下问题需要解决:

网站美化:css,bootstrap,js等不知道如何和django的表单最大限度融合使用。我目前的感觉是如果使用js,就必须自己在模板中写表单。

功能拓展:django虽说是一个强大的框架,但是还是有很多地方需要自己定制。比如用户登陆系统,django自身比较简单,而第三方的app虽然功能完善,但是其帮助文档一般是2句话说完,对于新手实在门槛过高。

结语:以上就是首席CTO笔记为大家介绍的关于django商用如何的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/25246.html