我有一个具有属性(公司名称......)的客户类,另一个具有客户数据。它是一个文本字段,但不显示为文本字段。我在客户端类中使用 models.foreignkey(outraclasse, on_delete=models.cascade)
调用它。我做错了吗?缺少什么?
编辑: 这些是应用程序的模型和管理员 管理员:
from django.contrib import admin from tenants.models import client # register your models here. class clientadmin(admin.modeladmin): list_display = [ 'company_name', 'company_register_name', 'company_id'] search_fields = [ 'company_name', 'company_register_name', 'company_id'] list_per_page = 10 admin.site.register(client,clientadmin)
型号
from django.db import models from datetime import date class ClientBasicData(models.Model): # client_id = models.ForeignKey(Client, on_delete=models.CASCADE) name_admin_ti = models.CharField(max_length=30, verbose_name = u'Nome do responsavel TI', unique=False) def __str__(self): return f"{self.name_admin_ti}" class Client(models.Model): company_data = models.ForeignKey('ClientBasicData', on_delete=models.CASCADE, verbose_name= u'Dados do cliente', unique=False) company_name = models.CharField(max_length=30, verbose_name = u'Razao social', unique=False) company_register_name = models.CharField(max_length=30, verbose_name = u'Nome da Empresa', unique=True) company_id = models.CharField( max_length=30, verbose_name = u'CNPJ da empresa', unique=True) date_start_company = models.DateField( verbose_name = u'Data de ingresso de cliente', unique=False, default=date.today, null=True) def __str__(self): return f"{self.company_name} - {self.company_register_name} - {self.company_id}" """ class ClienteBasicData(models.Model): client_id = models.ForeignKey(Client, on_delete=models.CASCADE) name_admin_ti = models.CharField(max_length=30, verbose_name = u'Nome do responsabel TI', unique=False) def __str__(self): return f"{self.name_admin_ti}" """
正确答案
Django Admin 中的默认行为是对另一个模型的引用显示为下拉框。这是有道理的,因为对另一个模型(外键)的引用只是一个值,它表示:“另一个表中的哪一行保存与此记录相关的数据”。
通常没有机会直接编辑其他表(其他模型)中的值。
如果您希望相关模型作为可编辑文本字段显示在 Django 管理中,您应该查看 Django 管理“内联”类。您需要为 ClientBasicData 定义内联,然后从 ClientAdmin 中引用该数据。
注意:您正在尝试做的事情看起来您的模型设计可能存在更根本的问题。您可能需要考虑一下组织这些数据的其他方式(即,真的有理由将“基本数据”放在另一个表中吗?)。
以上是Django 中如何让一个类继承另一个类的元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

Python在web开发、数据科学、机器学习、自动化和脚本编写等领域有广泛应用。1)在web开发中,Django和Flask框架简化了开发过程。2)数据科学和机器学习领域,NumPy、Pandas、Scikit-learn和TensorFlow库提供了强大支持。3)自动化和脚本编写方面,Python适用于自动化测试和系统管理等任务。

两小时内可以学到Python的基础知识。1.学习变量和数据类型,2.掌握控制结构如if语句和循环,3.了解函数的定义和使用。这些将帮助你开始编写简单的Python程序。

如何在10小时内教计算机小白编程基础?如果你只有10个小时来教计算机小白一些编程知识,你会选择教些什么�...

使用FiddlerEverywhere进行中间人读取时如何避免被检测到当你使用FiddlerEverywhere...

Python3.6环境下加载Pickle文件报错:ModuleNotFoundError:Nomodulenamed...

如何解决jieba分词在景区评论分析中的问题?当我们在进行景区评论分析时,往往会使用jieba分词工具来处理文�...

如何使用正则表达式匹配到第一个闭合标签就停止?在处理HTML或其他标记语言时,常常需要使用正则表达式来�...

攻克Investing.com的反爬虫策略许多人尝试爬取Investing.com(https://cn.investing.com/news/latest-news)的新闻数据时,常常�...


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3 Linux新版
SublimeText3 Linux最新版

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3汉化版
中文版,非常好用

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。