【发布时间】:2021-03-30 17:20:02
【问题描述】:
如何将类属性作为模型类的参数传递?也许我错过了一些东西例如:
from django.db import models
from django.utils import timezone
from django.contrib.auth.models import User
class Post(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
date_posted = models.DateTimeField(default=timezone.now)
author = models.ForeignKey(User, on_delete=models.CASCADE)
例如,我可以得到上述的一个实例
user=User.objects.filter(username='me')[0]
Post(title='random title', content='dqwdf', author=user)
我觉得很奇怪,因为类的字段是类属性而不是实例属性。
例如来自 Python:
class Whatever:
pay = 3
profit = 2
我知道我做不到
Whatever(pay=3,profit=2)
关于话题另一个问题: models.Model 有自己的 init 吗? 如果是,因为我的 Post 类继承自它,那么它应该具有相同的 init。 我认为除了 self 之外不接受任何参数对我来说是否正确?
【问题讨论】:
标签: django