东方耀AI技术分享

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3672|回复: 8
打印 上一主题 下一主题

[课堂笔记] 13、python_django_web开发_创建在线教育izengzhi爱增值平台项目...

[复制链接]

1365

主题

1856

帖子

1万

积分

管理员

Rank: 10Rank: 10Rank: 10

积分
14439
QQ
跳转到指定楼层
楼主
发表于 2017-10-28 16:15:42 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式



13、python_django_web开发_创建在线教育izengzhi爱增值平台项目及技术细节准备_笔记


export WORKON_HOME=~/Desktop/virtual_envs_works/
source /Library/Frameworks/Python.framework/Versions/2.7/bin/virtualenvwrapper.sh
把export命令和source命令,加入到~/.bash_profile,就无需重复初始化了
用pycharm创建Django项目  解释器选择 interpreter 虚拟环境里的
创建mysql数据库:  字符集:uft8—UTF8 Unicode   
排序规则:utf8_general_ci      数据库名:dfy999_db
Html文件存放在 各自应用下 templates/应用名/
Css js 图片文件  存放在 static/下   在settings最下面有
日志文件           log/
用户的上传文件   media/  uploads/
App多了以后 所有app都存放在  apps/    引入需要加apps.XXX
也可以将 apps目录 mark一下 为Source Root
Mark只是会让pycharm不会报错 如果命令行方式运行 还是会报错,此时就需要
修改settings里面的 配置apps当做我们的根搜索路径
配置数据库mysql
'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'dfy999_db',
    'USER': 'root',
    'PASSWORD': 'root',
    'HOST': '127.0.0.1',
}
启动manage.py  Tools 后会报错:
Error loading MySQLdb module: No module named MySQLdb.
Did you install mysqlclient or MySQL-python?
进入虚拟环境 安装驱动    pip install mysql-python
MySQL-python (1.2.5)
成功后   makemigration  migrate  就可以看到表了 mysql数据库中
settings.py里面的:
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates'
STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static')
   
这种设置方法是 没有把html模板文件放到各自的app中的
不像之前的:开发第一个Template:
1、在app根目录下创建名为templates的目录
字符编码的错误解决:可以在py文件的开头写上
# _*_ coding:utf-8 _*_     指定u8的编码
# -*- coding: utf-8 -*-
models中类  的子类 class Meta:  属性可以有:
verbose_name = u’’
db_table= “user_table” 指定数据表的名称 而不是自动生成appname_类名
Ordering=“-object_id”   根据字段进行倒序
verbose_name_plural = verbose_name
'AutoField', 'BLANK_CHOICE_DASH', 'BigAutoField', 'BigIntegerField',
'BinaryField', 'BooleanField', 'CharField', 'CommaSeparatedIntegerField',
'DateField', 'DateTimeField', 'DecimalField', 'DurationField',
'EmailField', 'Empty', 'Field', 'FieldDoesNotExist', 'FilePathField',
'FloatField', 'GenericIPAddressField', 'IPAddressField', 'IntegerField',
'NOT_PROVIDED', 'NullBooleanField', 'PositiveIntegerField',
'PositiveSmallIntegerField', 'SlugField', 'SmallIntegerField', 'TextField',
'TimeField', 'URLField', 'UUIDField',
Debug run  可以打断点
objects.get()
objects.all()
objects.filter(name=XXX , age=XXX)   and的条件
objects.create()
save()   delete()
{% ifequal %}    {% endifequal %}

让天下人人学会人工智能!人工智能的前景一片大好!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|人工智能工程师的摇篮 ( 湘ICP备2020019608号-1 )

GMT+8, 2024-5-19 18:11 , Processed in 0.173727 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表