`
iyuan
  • 浏览: 471722 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

django 非抽象model的继承

阅读更多
遇到一个很“拧巴”的情况,需要在django下继承一个model, 全复制此model的字段,再加一些额外字段,组一张新表。而父model不是抽象类型:
class P(models.Model):
    class Meta:
        abstract = False


这个就比较尴尬了,网上找了一圈,没能找到官方的解决方案,只能“黑”一把了。
setattr(P._meta, 'abstract', True)
class C(P): pass


常规情况下,这样就够了,如果不幸像我遇到的,P中还有一堆related_name...

我去静静。。
0
1
分享到:
评论

相关推荐

    Python库 | django-tracking-model-0.1.3.tar.gz

    `django-tracking-model`提供了一个抽象基类`AbstractUserTrackModel`,你可以继承这个类创建自定义的跟踪模型,记录你需要的数据字段,例如访问时间、URL、停留时长等。 ```python from tracking_model.models ...

    Django中模型Model添加JSON类型字段的方法

    在Django框架中,模型(Model)是数据库表的抽象表示,它允许开发者定义数据结构并操作数据库。在处理复杂的、非结构化的数据时,传统的关系型数据库字段类型可能无法满足需求,这时JSONField就显得非常有用。JSON...

    Python-轻松整合Django模型的常见行为

    在Django中,模型(Model)是数据库表的抽象层,用于定义数据结构和业务逻辑。通过在模型类中定义字段和方法,我们可以方便地操作数据库中的数据。 1. **时间戳**:在Django模型中,经常需要记录创建时间和最后修改...

    Practical django Projects 实战Django

    Django是一款开源的Python Web框架,遵循MVC(Model-View-Controller)设计模式,但其更倾向于MTV(Model-Template-View)架构。该框架的主要特点包括: - **快速开发**:Django的设计理念之一就是简化开发过程,让...

    django框架面向对象ORM模型继承用法实例分析

    1.抽象类继承:父类继承自models.Model,但不会在底层数据库中生成相应的数据表,父类的属性列存储在其子类的数据表中。 2.多表继承:多表继承的每个模型类都在底层数据库中生成相应的数据表管理数据。 3.代理模型...

    重写django的model下的objects模型管理器方式

    在Django中,模型(Model)是数据存储的主要接口,它与数据库表相对应。`objects`是一个默认的模型管理器(Manager),用于处理模型实例的CRUD操作。当你需要自定义查询行为或者添加特殊功能时,重写`objects`模型...

    Django-1.8.2-中文文档

    Django模型继承自`django.db.models.Model`类,并定义模型的必要字段和行为。模型中的每个属性代表数据库中的一个字段,而Django提供了一套自动生成的用于数据库访问的API。 在Django中定义模型字段时,开发者可以...

    2023年Django大二下学期期末复习

    1. MVC(Model-View-Controller)架构:Django遵循MVC模式,但其内部结构称为MTV(Model-Template-View),强调数据模型、模板渲染和视图逻辑的分离。 2. 安装与设置:通过pip安装Django,并创建项目和应用,配置...

    DjangoBook

    然后,详细讲解了MVC设计模式,这是Django等现代Web框架常采用的一种设计模式,它将Web应用分为模型(Model)、视图(View)和控制器(Controller)三个核心部分。 Django的历史也是学习该框架不可或缺的一部分。...

    Django Resource

    1. **模型(Model)**:Django的模型是数据库的抽象层,定义了数据结构和字段类型。通过定义模型类,你可以轻松地创建数据库表,执行CRUD操作(创建、读取、更新、删除)。 2. **视图(View)**:视图是应用的逻辑...

    django1.2文档

    作为 Python 的一个流行 web 开发框架,Django 以其 MVC(Model-View-Controller)设计模式和“ batteries included ”的理念而备受赞誉。Django 1.2 版本包含了对性能优化、数据库管理、模板系统和表单处理等方面的...

    django1.4官方离线文档 html

    - Model Inheritance:1.4版引入了模型继承的概念,允许开发者创建抽象基类,实现代码重用和更灵活的数据结构。 - Class-Based Views(CBVs):这个版本进一步完善了CBVs,使得视图的编写更加模块化和可复用。 - ...

    Python-动态创建一个模型的多个tablename并通过DjangoORM操作

    在Django中动态创建模型并设置不同表名,我们需要创建一个基类,然后通过继承该基类来创建不同的模型。这个基类可以包含一些公共的字段和方法,而子类则可以根据需求添加特定的字段。例如: ```python from django....

    Django model反向关联名称的方法

    ### Django Model 反向关联名称的方法详解 #### 一、引言 在使用Django进行Web开发时,经常需要处理数据库中的多对多关系(Many-to-Many)和一对多关系(One-to-Many)。这两种关系通常通过`ManyToManyField`和`...

    Django X 框架源码-实例

    在Django X中,开发者可能自定义了一些模型类,这些类继承自`django.db.models.Model`,并包含了字段(如CharField、IntegerField等)和方法,用于处理数据的增删改查操作。 2. **视图(View)**:视图负责处理HTTP...

    Django-1.8.18 for python

    3. **模板系统**: Django的模板语言(Django Templates)是一种强大的HTML模板引擎,支持变量插入、控制结构(如if、for)、过滤器和继承等特性,可以方便地实现动态网页生成。 4. **管理后台(Admin)**: Django的...

    Python一日一练---Django模版练习源码

    8. **模型与模板**:Django模型是数据库的抽象,通过`Model`类定义数据结构。在模板中,你可以通过`{{ object.field }}`访问模型对象的属性。 9. **错误版本与正确版本**:压缩包中的`错误版本.zip`和`正确版本.zip...

    Django-1.8.19,适用Pyhton3

    在Django中,通过定义类来创建模型,这些类继承自`django.db.models.Model`,并包含字段(如CharField、IntegerField等)和方法。例如: ```python from django.db import models class BlogPost(models.Model)...

    Django官方文档转换PDF

    提供通用Web开发模式的高度抽象,帮助开发者专注于业务逻辑而非基础架构。 - **适用场景**:适用于构建各类Web应用,特别适合快速开发和大规模网站。 #### 二、Django核心组件详解 - **第一章:介绍Django** - **...

Global site tag (gtag.js) - Google Analytics