django

常用命令

# 首先安装好python环境 安装django库
# 创建一个django项目
django-admin startproject your_project_name
# 创建一个app
django-admin startapp your_app_name
# 生成数据库命令
python manage.py makemigrations
# 迁移数据库
python manage.py migrate
# 创建一个超级用户
python manage.py createsuperuser
# 修改用户密码 
python manage.py changepassword username
# 默认使用8000端口
python manage.py runserver 
# 指定启动端口
python manage.py runserver 8080 
# 指定IP和端口
python manage.py runserver 127.0.0.1:9000 
# 清空数据库
python manage.py flush
# Django项目环境终端
python manage.py shell

# 更多命令在终端输入 python manage.py 
[auth]
    changepassword
    createsuperuser

[contenttypes]
    remove_stale_contenttypes

[django]
    check
    compilemessages
    createcachetable
    dbshell
    diffsettings
    dumpdata
    flush
    inspectdb
    loaddata
    makemessages
    makemigrations
    migrate
    optimizemigration
    sendtestemail
    shell
    showmigrations
    sqlflush
    sqlmigrate
    sqlsequencereset
    squashmigrations
    startapp
    startproject
    test
    testserver

[sessions]
    clearsessions

[staticfiles]
    collectstatic
    findstatic
    runserver

修改时区 语言

# django项目的setting.py文件中

# 语言修改为中文
LANGUAGE_CODE = 'zh-hans' 
# 修改时区
TIME_ZONE = 'Asia/Shanghai'

静态文件目录 文件上传路径

# django项目的setting.py文件中

#静态文件目录和名称
STATIC_URL = '/static/'
#静态文件夹目录的路径
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
)
#文件上传路径,图片上传、文件上传都会存放在此目录
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

连接SQL数据库

DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql', # sql数据库对应的引擎
            'NAME': 'blogs', # 数据库名称
            'USER': 'root', # sql数据库登录用户名
            'PASSWORD': '******', # 对应的密码
            'HOST': '127.0.0.1', # sql数据库的ip地址
            'PORT': '3306', # sql数据库端口号
        }
}

配置模板路径

TEMPLATE_DIRS = (
        os.path.join(BASE_DIR,'templates'),
    )

注册APP

INSTALLED_APPS = [
    'blog.apps.BlogConfig',#注册APP应用
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.sessions",
    "django.contrib.messages",
    "django.contrib.staticfiles",
]

设置打印日志到屏幕

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
        },
    },
    'loggers': {
        'django.db.backends': {
            'handlers': ['console'],
            'propagate': True,
            'level': 'DEBUG',
        },
    }
}

在浏览器里访问自己上传的文件,在urls.py中:

from django.views.static import serve
from django.conf import settings

urlpatterns = [
    ...
    re_path('^media/(?P<path>.*)$', serve, {'document_root': settings.MEDIA_ROOT}),
]
#列表顶部,设置为False不在顶部显示,默认为True。
actions_on_top=True

#列表底部,设置为False不在底部显示,默认为False。
actions_on_bottom=False

# 登录框名称
admin.site.site_header = '吴腾的管理后台'
# 后台管理网页名称
admin.site.site_title = '吴腾'
# 
all()         			# 查询所有结果
filter(**kwargs)    	# 它包含了与所给筛选条件相匹配的对象
get(**kwargs)     		# 返回与所给筛选条件相匹配的对象,返回结果有且只有一个,如果符合筛选条件的对象超过一个或者没有都会抛出错误。
exclude(**kwargs)    	# 它包含了与所给筛选条件不匹配的对象
values(*field)     		# 返回一个ValueQuerySet 一个特殊的QuerySet,运行后得到的并不是一系列model的实例化对象,而是一个可迭代的字典序列
values_list(*field)  	# 它与values()非常相似,它返回的是一个元组序列,values返回的是一个字典序列
order_by(*field)    	# 对查询结果排序
reverse()       		# 对查询结果反向排序
distinct()      		# 从返回结果中剔除重复纪录
count()       			# 返回数据库中匹配查询(QuerySet)的对象数量。
first()        			# 返回第一条记录
last()        			# 返回最后一条记录
exists()        		# 如果QuerySet包含数据,就返回True,否则返回False
annotate()       		# 使用聚合函数
dates()         		# 根据日期获取查询集
datetimes()     		# 根据时间获取查询集
none()         			# 创建空的查询集
union()        			# 并集
intersection()    		# 交集
difference()      		# 差集
select_related()   		# 附带查询关联对象
prefetch_related()   	# 预先查询
extra()       			# 附加SQL查询
defer()        			# 不加载指定字段
only()        			# 只加载指定的字段
using()       			# 选择数据库
select_for_update()  	# 锁住选择的对象,直到事务结束。
raw()        			# 接收一个原始的SQL查询
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

trust Tomorrow

感谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值