zoukankan      html  css  js  c++  java
  • 关于Django 框架的ContentType 模型

    ContentType 模型对应数据库中django_content_type表,主要用户维护 django project 中所安装的所有用户模型

    代码如下:

    class ContentType(models.Model):
       #这三个字段分别表示 模型的用户化名称,模型所属app名称,模型名称
    name
    = models.CharField(max_length=100,verbose_name=_('name'))
    app_label
    = models.CharField(max_length=100)
    model
    = models.CharField(_('python model class name'), max_length=100)
    objects
    = ContentTypeManager()  #自定义Mananger类

    class Meta:
    verbose_name
    = _('content type')
    verbose_name_plural
    = _('content types')
    db_table
    = 'django_content_type'
    ordering
    = ('name',)
    unique_together
    = (('app_label', 'model'),)

    def __unicode__(self):
    return self.name

    def model_class(self):
    "Returns the Python model class for this type of content."
    from django.db import models
    return models.get_model(self.app_label, self.model)

    def get_object_for_this_type(self, **kwargs):
    """
    Returns an object of this type for the keyword arguments given.
    Basically, this is a proxy around this object_type's get_object() model
    method. The ObjectNotExist exception, if thrown, will not be caught,
    so code that calls this method should catch it.
    """
    return self.model_class()._default_manager.using(self._state.db).get(**kwargs)

    def natural_key(self):
    return (self.app_label, self.model)

  • 相关阅读:
    java监听器之实现在线人数显示
    java之web开发过滤器
    java之MVC开发模式
    java之jsp内置对象
    java之jsp页面语法
    java之jsp实现动态网页
    java数据库(MySQL)之增删改查
    java数据库之JDBC
    java线程之线程通信控制
    java线程之线程通信
  • 原文地址:https://www.cnblogs.com/johan/p/2022478.html
Copyright © 2011-2022 走看看