我想知道从Django模型获取所有字段是否有捷径,并且只定义通过联接(或多个联接)检索的附加字段。
考虑如下模型:
class A(models.Model):
text = models.CharField(max_length=10, blank=True)
class B(models.Model):
a = models.ForeignKey(A, null=True, on_delete=models.CASCADE)
y = models.PositiveIntegerField(null=True)
现在我可以像这样使用函数
B.objects.valu
我试图覆盖令牌模型:
class CustomerToken(Token):
user = models.OneToOneField(Customers, on_delete=models.CASCADE)
但是收到一个错误:
django.core.exceptions.FieldError: Local field 'user' in class 'CustomerToken' clashes with field of similar name from base class 'Token'
如Django 中所述
在Django
我扩展了Django用户模型,并在其中添加了一些字段。然后,我保存了模型,并使用StackedInline替换了最后一个用户模型。为此目的,我使用django_rest_framework。更具体地说,这里是我的代码:
Models.py
class UserProfile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
# TODO: add Upload directory to the avatar
avatar = models.ImageField()
我正在创建模型,其中每个模型都应该与一个用户相关,如下所示:
class Item(models.Model):
user = models.ForeignKey(User)
但是在Django Admin中,对于Item,它显示了一个select字段,其中包含按用户名列出的所有用户。除了用户名之外,我还需要显示每个用户的first_name和last_name。
如何在Django Admin界面选择列表中同时显示这三个字段?
我为我的用户使用Django用户模型。我需要的是在用户管理上添加一个操作,使我能够向我所选择的用户发送一条短信。它应该是这样工作的:
我登录Django管理员
选择用户模型
从用户列表中选择一个用户,然后选择我创建的“发送消息”操作。
应该将我重定向到另一个页面,该页面将具有选定的用户名,并从我为处理文本消息而创建的“文本消息”模型中的字段。
到目前为止,我不得不创建另一个模型:
class UserProfile(models.Model):
user = models.OneToOneField(User) #extended the User model
我有一个配置文件模型,它与Django的用户模型有一对一的关系,我还有另一个模型,称为权限(与Django的内部权限概念无关),它有一个配置文件的外键。如下所示:(为了简单起见,我删除了这里的大部分字段)
from django.db import models
from django.contrib.auth.models import User as DjangoUser
class Account(models.Model):
name = models.CharField(max_length=200, db_index=True)
class Profile(models
我在Django应用程序中实现了一个日志系统,这个系统,因为任何用户的每一个动作都会在数据库中保存信息。以下是模型:
class Log(models.Model):
user = models.ForeignKey(to=User, on_delete=models.PROTECT)
log = models.CharField(max_length=255)
type = models.CharField(max_length=50)
date = models.DateTimeField(auto_now_add=True)
company = m
我在django模板中提供了Obj形式的模型对象。
现在我想要一个泛型函数,它可以像这样显示中的所有字段和值
{% for instance in data %}
{% for field, value in instance.fields.items %}
{{ field }}: {{ value }}
{% endfor %}
{% endfor %}
我在Model中尝试过
def objectdata(self):
return serializers.serialize( "python", self.objects.