一.create project
mkdir jango
cd jango 目录创建project myapp
django-admin startproject myapp
2.在给project创建app
cd myapp 的project下:
python manage.py startapp appname 创建一个app
python manage.py run server localhost:9999 启动jango server 默认:http://localhost:9999访问显示django页面表示创建app ok

  

二.数据库mysql以及可能遇到问题:
tips:
修改settings.py :
1.ALLOWED_HOSTS = ['*',] 默认是空,如果想实现非localhost地址连接django server,
注意在同一网落,此外注意结尾要保留逗号","
DATABASES修改如下,其中NAME表示数据库你想要新建初始化数据的db名称,如果数据库已经存在此db,
先登录mysql所安装机器mysql -u root -p 然后drop database existedDbName;此外修改默认的数据库ENGINE sqlite3为mysql,再执行创建进行初始化迁移的db ,
create database mysitedb CHARACTER SET utf8 COLLATE utf8_general_ci;:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': "mysitedb",
'USER': 'root',
'PASSWORD': 'root',
'HOST': '192.168.110.128',
'PORT': '3306',
}
}
在进行数据库迁移前必须确保数据库已存在并且可以连接:
在project目录之前是myapp目录(settings.py所在的目录下)的init.py 添加:
import pymysql
pymysql.install_as_MySQLdb()
最后修改django默认语言和时区为Asia/Shanghai如下默认是:{ #LANGUAGE_CODE = 'en-us'
#TIME_ZONE = 'UTC' }修改为:
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
最后执行数据库初始化迁移migrate:
python manage.py makemigrations
python manage.py migrate
执行迁移最终成功如下,也可以进入数据库检查mysitedb 也就是你创建的db:use dbname; show tables;:
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
Applying sessions.0001_initial... OK
检查数据库会如下:
mysql> show tables;
+----------------------------+
| Tables_in_mysitedb |
+----------------------------+
| auth_group |
| auth_group_permissions |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| django_admin_log |
| django_content_type |
| django_migrations |
| django_session |
+----------------------------+
10 rows in set (0.05 sec)
这就是意味着数据库初始化迁移成功啦!!!
数据库迁移过程可能遇到问题以及解决方案:
1.mysql 连接失败django.db.utils.InternalError:
(1130, "Host '192.168.110.1' is not allowed to connect to this MySQL server"):
解决方案:
1.1授权 settings.py 配置数据库用户root任意地址访问:
use mysql ;
update user set host = '%' where user ='root';
flush privileges;
2.FAQ-RuntimeError: cryptography is required for sha256_password or caching_sha2_password
解决:pip install cryptography python version: 3.7.2
3.django.core.exceptions.ImproperlyConfigured:
mysqlclient 1.3.13 or newer is required; you have 0....
解决:cd C:\Python37\Lib\site-packages\django\db\backends\mysql
3.1修改base.py 和operations.py : 3.2修改operations.py :
query = query.decode(errors='replace')的decode修改为encode
注释base.py :
if version < (1, 3, 13):
raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
三.settings.py管理应用多个:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
"app",
"app2",
"app3"
]

  

Django 创建app 应用,数据库配置的更多相关文章

  1. Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置

    近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...

  2. (转载)Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置

    近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...

  3. Django MTV 开发模式 + 数据库配置

    MTV 开发模式 Django 的设计鼓励松耦合及对应用程序中不同部分的严格分割.遵循这个理念的话,要想修改应用的某部分而不影响其它部分就比较容易了.在视图函数中,我们已经讨论了通过模板系统把业务逻辑 ...

  4. Django 创建 APP和目录结构介绍

    一.通过pip安装Django 以windows 系统中使用pip命令安装为例 win+r,调出cmd,运行命令:pip install django自动安装PyPi 提供的最新版本.指定版本,可使用 ...

  5. Django创建App报错

    在django下创建APP项目时遇到的坑 python manage.py startapp app01 报错内容如下: 解决:找到报错中的文件夹151行删除items(),)中的逗号即可 在命令行下 ...

  6. django创建app

    前几天,

  7. python27+django创建app

    python manage.py startapp polls创建一个叫polls的app 编辑文件 polls/models.py : 1 from django.db import models ...

  8. Django 创建APP简单步骤

    yum install epel-releaseyum install python34yum install python-pippip install django django-admin st ...

  9. django 创建model(数据库表)失败

    在models.py中创建数据库表   from django.db import models # Create your models here. class Book(models.Model) ...

随机推荐

  1. new Vue发生了什么(五)

    从入口代码开始分析,我们先来分析 new Vue 背后发生了哪些事情.我们都知道,new 关键字在 Javascript 语言中代表实例化是一个对象,而 Vue 实际上是一个类,类在 Javascri ...

  2. ubuntu系统定时运行 crontab

    1,crontab是个啥? ubuntu系统自带cron工具,cron是一个系统上的定时工具,用它的好处在于,不同的程序可以用同一个计时器,这样就省得不同程序各自sleep了,另外它还支持比较多的个性 ...

  3. 3ds Max File Format (Part 5: How it all links together; ReferenceMaker, INode)

    At this point, you should start to familiarize yourself a bit with the publicly available 3ds Max AP ...

  4. python接口自动化之发送post(四)

    1.ssl问题 目前很多的请求使用的都是较为安全的https请求,https请求相对于http安全级别更高,需要验证ssl证书 写代码的时候有两种可以忽略ssl验证的方法 (1)import urll ...

  5. Centsos7 aria2

    wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/aria2.sh & ...

  6. 快速ni

    代码: while(p>0)                   (mul(a,b)) = a*b; { 等同于二分 if(p%2==1) mul(ans,a); 目的是为了二分个基数的二次方乘 ...

  7. EF CodeFirst 之 Fluent API

    如何访问Fluent API: 在自定义上下文类中重写OnModelCreating方法,在方法内调用. 注:用法基本一样,配置类中的this就相当于modelBuilder.Entity<Pe ...

  8. Python :元组,不可修改的序列

  9. 利用python装饰器为字符串添加,HTML标签

    # 为字符串添加HTML标签 import time def zhuang(fun): def zhaung_1(*args, **kargs): # time.sleep(1) html_str = ...

  10. C语言数据结构——第四章 串

    四.串 4.1-串的基本概念 串的定义 串是由数字.字母或其他字符组成的有限序列,一般记为 StringName = “a[0]a[1]a[2]···a[i]···a[n-1]”(n>0,0&l ...