一。什么是Django及其作用.
Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站!
Django的特点:
强大的数据库功能:拥有强大的数据库操作接口(QuerySet API),也能执行原生SQL
自带强大后台:网站拥有一个强大的后台,轻松管理内容
优雅的网址:用正则匹配网址,传递到对应函数,随意定义。
模版系统:易扩展的模版系统,设计简易,代码,样式 分开设计,更容易管理。
缓存系统:与memcached,redis等缓存系统联用,更出色的表现,更快的加载速度。
国际化:完全支持多国语言应用,允许定义翻译的字符,轻松翻译成不同国际的语言。
Django目录结构:
urls.py:网址入口,关联到对应的Views.py中的一个函数,访问网址对应的函数。
views.py:处理用户发出的请求,从urls.py中对应过来,通过渲染templates中的网页可以将显示内容,比如登陆后的用户名,数据,输出到网页。
models.py:与数据库操作相关,存入或读取数据时用到这个
templates文件夹:views.py中的函数渲染templates中的HTML模版,得到动态内容网页,可以用缓存来提高速度。
admin.py:后台,可以用很少量的代码就拥有一个强大的后台。
settings.py:Django的全局设置,配置文件,比如DEBUG的开关,静态文件的位置设置等。
二。Django中的一些常用命令。
1、新建一个django project项目:
(zhang) [root@python zhang]# django-admin startproject pyqi (zhang) [root@python zhang]# tree pyqi/ pyqi/ ├── manage.py └── pyqi ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py 1 directory, 5 files
pyqi/根目录只是项目的容器,它的名字与Django无关,可以将它重命名为任何任何名字
manage.py:一个命令行实用程序,可让你以各种方式与Django项目进行交互
pyqi:是项目的实际python包,它的名字是你需要用来导入任何内容的python包名
__init__.py:一个空文件,告诉python这个目录应该被视为一个python包
settings.py:这是Django项目的设置与配置,Django设置会告诉你有关设置如何工作的所有信息
urls.py:这是Django项目的URL声明
wsqi.py:WSGI兼容的Web服务器为你的项目提供服务的入口点
2、新建app:
cd project_name #切换到项目目录下 python manage.py startapp app_name 或者 django-admin.py startapp app-name
3、创建数据库表或更改数据库表或字段
在APP的models中建立类数据模版 class userinfo(models.Model): username = models.CharField(max_length=32) password = models.CharField(max_length=32) salary = models.IntegerField() 生成配置文件: (zhang) [root@python pyqi]# python manage.py makemigrations Migrations for 'app01': app01/migrations/0001_initial.py - Create model userinfo 根据配置文件粗昂居数据库相关表: (zhang) [root@python pyqi]# python manage.py migrate Operations to perform: Apply all migrations: admin, app01, auth, contenttypes, sessions Running migrations: Applying contenttypes.0001_initial... OK Applying auth.0001_initial... OK Applying admin.0001_initial... OK Applying admin.0002_logentry_remove_auto_add... OK Applying app01.0001_initial... OK Applying contenttypes.0002_remove_content_type_name... OK Applying auth.0002_alter_permission_name_max_length... OK Applying auth.0003_alter_user_email_max_length... OK Applying auth.0004_alter_user_username_opts... OK Applying auth.0005_alter_user_last_login_null... OK Applying auth.0006_require_contenttypes_0002... OK Applying auth.0007_alter_validators_add_error_messages... OK Applying auth.0008_alter_user_username_max_length... OK Applying auth.0009_alter_user_last_name_max_length... OK Applying sessions.0001_initial... OK 复制代码
4、开发服务器使用:
python manage.py runserver 0.0.0.0:8000
5、清空数据库:
python manage.py flush
此命令会把数据全部清空掉,只留下空表
6、创建超级管理员:
python manage.py createsuperuser 根据提示输入用户名、邮箱和密码,邮箱可以为空 python manage.py changepassword username 修改用户密码
7、导出数据和导入数据:
导出数据: python manage.py dumpdata appname > appname.json 导入数据: python manage.py loaddata appname.json
8、更多命令:
复制代码 项目环境终端: python manage.py shell 数据库命令行: python manage.py dbshell 查看命令: python manage.py