【慕课网】强力Django和杀手级xadmin学习笔记

2024-02-10 23:36

本文主要是介绍【慕课网】强力Django和杀手级xadmin学习笔记,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

慕课网

强力Django和杀手级xadmin学习笔记
2018年6月

3-2

在这里插入图片描述

3-3
  • 指定主键
  • primary_key = True
  • 在这里插入图片描述
3-5
  • 在url中指定别名url(r'^form/$',getform,name = 'go_form'
    在 template中 {% url 'go_form' %}
4-3
  • 继承django的user表
    from django.contril.auth.models import AbstractUser
    class UserProfile(AbstractUser):___
    
4-8
  • app加入到搜索路径内
    在setting中
    sys.path.insert(0,os.path.join(BASE_DIR,'apps'))
5-2
  • xadmin 的安装
  • pip install xadmin
  • 源码安装,在[github]上下载,将xadmin拷贝到项目目录中,在url中配置
    在配置中遇到很多报错,是因为django从1.x迁移到2.x的错误,可参考https://blog.csdn.net/qq_34619992/article/details/79809432
5-5
  • 后台数据库显示中文
    在app的apps.py 中:
    class 中添加 verbose_name = "中文名称"
    然后在该app的__init__.py 中添加:
    default_app_config = "database.apps.DatabaseConfig"
    其中 DatabaseConfig 为 apps.py 中的class名,database为app名
6-7
  • 注册或登录图片验证码功能
  • django-simple-captcha(github上搜索)
7-3/7-4
  • 上传文件地址设置
    在model里有imgField字段,上传路径在哪设置呢
    在setting中添加:
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR,"media")
  • 要在template中使用media,如url ="{{ MEDIA_URL }}{{ app.img }}"
    需要在setting的template中添加:
    django.core.context_processors.media
    还要在url中做配置:
from django.views.static import serve
from MxOnline.setting import MEDIA_ROOT
url(r'^media/(?P<path>.*)$',serve,{"document_root":MEDIA_ROOT})
7-5
  • 分页开发库 django -pure -pagination(github搜索)
7-7
  • 当前台的一个表和后端数据库一个表的属性很相似时,可以直接将class表,转换为前台的form
from django import forms
class AnotherUserForm(forms.ModelForm):class Meta:model = UserAsk # 自己的class表field = ['name','mobile','course_name'] # 自定义字段

然后在view中直接调用save(commit=True)即可更新到数据库,非常省事,具体参见7-7和10-4的末尾部分视频

7-8
  • 异步请求,返回Json Ajax刷新
    return HttpResponse("{a:b}",content_type = "application/json")
7-9
  • 数据库反向取数据
    外键 A = models.ForeignKey(B)
    可以通过 B.A_set 类似形式,反向取到指向B的A的所有数据。
    B.A_set.all()取出全部
8-1
  • 如果一个字段是choice类型
    则在html页面中用get_choice_dispaly 显示
    例如:
A =  model.CharField(choices = (("cj","初级"),("gj","高级"))){{ classname.get_A_dispaly }}
10-1
  • 在html中 request.path 可以提取到当前页面的路径,相对路径,可以根据路径对某些按钮或标签做出相应状态。
    {{% if request.path | slice:'7' == '/course' %}}
    做出判断
10-2
  • 在view中,查询数据库,或的功能,比如筛选出name=name的或者email=email的,用到或的功能
import django.db.models import Qall_courses = all_courses.filter(Q(name==name) | Q(email = email) )
11-1
  • 登出功能
class LogoutView(View):def get(self,request):logout(request)  # django自带函数from django.core.urlresolvers import reversereturn HttpResponseRedirect(reverse("index"))  # 反解出网址
12-2

在这里插入图片描述

这篇关于【慕课网】强力Django和杀手级xadmin学习笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/698281

相关文章

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

对Django中时区的解读

《对Django中时区的解读》:本文主要介绍对Django中时区的解读方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景前端数据库中存储接口返回AI的解释问题:这样设置的作用答案获取当前时间(自动带时区)转换为北京时间显示总结背景设置时区为北京时间 TIM

重新对Java的类加载器的学习方式

《重新对Java的类加载器的学习方式》:本文主要介绍重新对Java的类加载器的学习方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、介绍1.1、简介1.2、符号引用和直接引用1、符号引用2、直接引用3、符号转直接的过程2、加载流程3、类加载的分类3.1、显示

Django之定时任务django-crontab的实现

《Django之定时任务django-crontab的实现》Django可以使用第三方库如django-crontab来实现定时任务的调度,本文主要介绍了Django之定时任务django-cront... 目录crontab安装django-crontab注册应用定时时间格式定时时间示例设置定时任务@符号

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Django序列化中SerializerMethodField的使用详解

《Django序列化中SerializerMethodField的使用详解》:本文主要介绍Django序列化中SerializerMethodField的使用,具有很好的参考价值,希望对大家有所帮... 目录SerializerMethodField的基本概念使用SerializerMethodField的

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操