Django获取应用下的所有models的例子
Django获取应用下的所有models
from django.apps import apps apps.get_models() # 获取所有的models,包含Django自带的 apps.get_app_config('blog') # 获取blog的配置 # <BlogConfig: blog> apps.get_app_config('blog').models # OrderedDict([('tag', <class 'app_blog.blog.models.Tag'>), ('category', <class 'app_blog.blog.models.Category'>)]) apps.get_app_config('blog').get_models() # 获取所有的models # <generator object AppConfig.get_models at 0x00000263BC3A2C78> list(apps.get_app_config('blog').get_models()) # 遍历所有的models # [<class 'app_blog.blog.models.Tag'>, <class 'app_blog.blog.models.Category'>, ...] apps.get_app_config('blog').get_model('Article')._meta.verbose_name # 获取models的名称 # '文章'
admin下实现遍历注册model
all_models = apps.get_app_config('blog').get_models() for model in all_models: try: admin.site.register(model) except: pass
以上这篇Django获取应用下的所有models的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Django shell调试models输出的SQL语句方法
在settings.py里,配置如下logging: LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'level':'DEBUG', 'class':'logging.StreamHandler', }, }, 'loggers': { 'django.db.backends': { 'handlers': ['console'], 'propagate': True,
-
Django的models中on_delete参数详解
在Django2.0以上的版本中,创建外键和一对一关系必须定义on_delete参数,我们可以在其源码中看到相关信息 class ForeignKey(ForeignObject): """ Provide a many-to-one relation by adding a column to the local model to hold the remote value. By default ForeignKey will target the pk of the r
-
Django models.py应用实现过程详解
编写 models.py 文件 from django.db import models # Create your models here. class User_info(models.Model): username = models.CharField(max_length=25,verbose_name='用户名') password = models.CharField(max_length=25,verbose_name='密码') age = models.IntegerFiel
-
解决django同步数据库的时候app models表没有成功创建的问题
问题描述: 在django中创建了一个app,而且在app中自定义创建了几个数据表,在同步的时候系统自带的表可以成功,但是models中的没有生效,而且进入对应app下的migrations目录,发现为空,应该如何解决呢! 解决方式: python3 manage.py makemigrations --empty managerbook # managerbook就是你的app名字,此处要写成自己的app名字 python3 manage.py makemigrations # 再次正常
-
Django 模型类(models.py)的定义详解
一. #在models.py中添加 #代码如下 from django.db import models #出版商 class Publisher(models.Model): name=models.CharField(max_length=30) address=models.CharField(max_length=50) city=models.CharField(max_length=60) state_province=models.CharField(max_length=30)
-
python Django中models进行模糊查询的示例
多个字段模糊查询, 括号中的下划线是双下划线,双下划线前是字段名,双下划线后可以是icontains或contains,区别是是否大小写敏感,竖线是或的意思 #搜索功能 @csrf_exempt#使用@csrf_exempt装饰器,免除csrf验证 def search_testCaseApi(request): if request.method == 'POST': name = request.POST.get('task_name') updateUser=request.POST.ge
-
Django获取应用下的所有models的例子
Django获取应用下的所有models from django.apps import apps apps.get_models() # 获取所有的models,包含Django自带的 apps.get_app_config('blog') # 获取blog的配置 # <BlogConfig: blog> apps.get_app_config('blog').models # OrderedDict([('tag', <class 'app_blog.blog.models.Tag'
-
Django获取该数据的上一条和下一条方法
使用Django的ORM操作的时候,想要获取本条,上一条,下一条. 初步的想法是写3个ORM,3个ORM如下: 本条:models.Obj.objects.filter(id=n).first() 下一条:models.Obj.objects.filter(id__gt=n).all().order_by("id").first() [注1:大于本条的第一个即是下一条] [注2:因为默认的asc排序,可以简化后面的] 上一条:models.Obj.objects.filter(id__
-
对django后台admin下拉框进行过滤的实例
使用django admin 自带后台 admin后台下拉显示的时候需要添加过滤条件, 因为表是自己关联自己,同时还需要过滤掉自己, 需要获取当前对象的id,需要获取obj_id from django.contrib import admin from .models import Comment # actions添加模型动作 def disable_commentstatus(modeladmin, request, queryset): queryset.update(is_enable
-
django处理select下拉表单实例(从model到前端到post到form)
现在假如要写一个按照"标题",'内容','作者'等等进行针对性的选择,这时需要涉及到使用select下拉表单来进行选择.django是可以比较简单的解决这个问题的. 下面是model: from django.db import models class TestModel(models.Model): SELVALUE = ( ('标题', 'first'), #前面是展示在前端界面的内容,后面的'first'是真正存在数据库中的 ('内容', 'second'), ('作者', '
-
重写django的model下的objects模型管理器方式
django自定义管理器和model的继承 在我写代码时建立的很多数据库需要一些共同的字段,比如is_active, create_time这些字段,所以可以建立一个基类model 模型的继承 我们可以充分利用oop特性,建立一个基类model,以后所有的model都继承这个类, 就不用在每个类都额外添加字段 class BaseModel(models.Model): is_active = models.BooleanField(default=True) create_time = mod
-
Django获取model中的字段名和字段的verbose_name方式
定义模型: class Game(models.Model): name = models.CharField(u'游戏名称',max_length=30) gameid = models.CharField(u'游戏id',max_length=20) def __str__(self): return self.name 获取字段名和verbose_name: from django.apps import apps def getmodelfield(appname,modelname):
-
django 获取字段最大值,最新的记录操作
如果是直接在数据库拉取 from django.db.models import Max Argument.objects.all().aggregate(Max('rating')) 如果是从已经存在的model列表获取 from django.db.models import Max args = Argument.objects.all() args.aggregate(Max('rating')) 获取最新的一行数据 max_rated_entry = YourModel.objects
-
使用AJAX和Django获取数据的方法实例
前言 使用Django服务网页时,只要用户执行导致页面更改的操作,即使该更改仅影响页面的一小部分,它都会将完整的HTML模板传递给浏览器. 但是如果我们只想更新页面的一部分,则不必完全重新渲染页面-我们可以使用AJAX代替. AJAX提供了一种将GET或POST请求发送到Django视图并接收任何返回的数据而无需刷新页面的方法. 现代JavaScript包含fetch API,该API为我们提供了一种纯JavaScript方式来发送AJAX请求. 让我们看一下如何通过获取发出GET和POST请求
-
django获取ajax的post复杂对象的实现方法
一.django的request中post对象为空(即获取不到前台ajax传送的post对象) 1.将django的setting中的django.middleware.csrf.CsrfViewMiddleware注释即可. 2.或在from中添加{% csrf %},后台接受的方法上加语法糖:@csrf_exempt,注意添加引用模块 3.若以上操作后还是不行,则将form标签中的action属性去掉(这里只是针对ajax处理,非表单提交) 二.对于ajax的复杂对象,例如[{"id&quo
随机推荐
- sql server建表时设置ID字段自增的简单方法
- 通过jquery实现tab标签浏览效果
- xp序列号大全可通过正版验证的XP序列号
- SpringCloud实战小贴士之Zuul的路径匹配
- javascript实现的图片切割多块效果实例
- Android5.0中Material Design的新特性
- Android TextView中文本点击文字跳转 (代码简单)
- Vuejs第七篇之Vuejs过渡动画案例全面解析
- 实例详解jQuery Mockjax 插件模拟 Ajax 请求
- jquery中attr和prop的区别分析
- js中string和number类型互转换技巧(分享)
- .net文件上传时实现通过文件头确认文件类型的方法
- 详解如何优雅地在React项目中使用Redux
- java开发之spring webflow实现上传单个文件及多个文件功能实例
- NestJs 静态目录配置详解
- python GUI实现小球满屏乱跑效果
- Eclipse在线安装hibernate插件
- 简单分析js中的this的原理
- 详解搭建es6+devServer简单开发环境
- Laravel 登录后清空COOKIE的操作方法