以下都是在已经切换到虚拟环境的情况下
安装
pip install django 或者 pip install django==1.11.5
创建项目
django-admin startproject partner 创建partner项目
manage.py:一个命令行工具,可以使你用多种方式对Django项目进行交互
内层的目录:项目的真正的Python包
_init _.py:一个空文件,它告诉Python这个目录应该被看做一个Python包
settings.py:项目的配置
urls.py:项目的URL声明
wsgi.py:项目与WSGI兼容的Web服务器入口
创建应用
python manage.py startapp booktest
- 定义模型models.py
from django.db import models
# Create your models here.
class BookInfo(models.Model):
# 图书模型
b_title = models.CharField(max_length=20)
b_pub_date = models.DateTimeField()
def __str__(self):
return self.b_title
class HeroInfo(models.Model):
# 英雄模型
h_name = models.CharField(max_length=10)
h_gender = models.BooleanField()
h_content = models.CharField(max_length=1000)
h_book = models.ForeignKey(BookInfo)
激活app
-
激活模型:编辑settings.py文件,将booktest应用加入到installed_apps中, 如下图:
生成迁移文件:根据模型生成sql语句
python manage.py makemigrations
执行迁移
python manage.py migrate
开启服务器
python manage.py runserver ip:port
默认端口8000 , 可以修改端口
python manage.py runserver 8080
如果修改文件不需要重启服务器,如果增删文件需要重启服务器
管理后台
创建一个管理员用户
python manage.py createsuperuser,按提示输入用户名、邮箱、密码
通过“ip:port/admin”访问 例如 http://192.168.64.131:8888/admin
界面本地化
- 编辑settings.py文件,设置编码、时区
LANGUAGE_CODE = 'zh-Hans' 中文
TIME_ZONE = 'Asia/Shanghai' 时区
若需要在admin看到图书表和英雄表还需要注册
效果图
忘记管理员密码重置
- 在程序的文件夹下,执行这样的命令,进行shell窗口:
python manage.py shell
- 对admin用户进行修改密码:
from django.contrib.auth.models import User
user =User.objects.get(username='admin') 自己的用户名
user.set_password('new_password')
user.save()
Django 管理界面没有样式
- 在设置界面设置
STATIC_ROOT = '/home/python/.virtualenvs/lin_django/lib/python2.7/site-packages/django/contrib/admin/static/' 自己的django静态文件的目录
STATIC_URL = '/static/'