相关疑难解决方法(0)

具有内联模型表单或formset的基于类的基于django的视图

我有以下型号:

class Bill(models.Model):
    date = models.DateTimeField(_("Date of bill"),null=True,blank=True)

class Item(models.Model):
    name = models.CharField(_("Name"),max_length=100)
    price = models.FloatField(_("Price"))
    quantity = models.IntegerField(_("Quantity"))
    bill = models.ForeignKey("Bill",verbose_name=_("Bill"),
                             related_name="billitem")
Run Code Online (Sandbox Code Playgroud)

我知道这是可能的:

from django.forms.models import inlineformset_factory
inlineformset_factory(Bill, Item)
Run Code Online (Sandbox Code Playgroud)

然后通过标准视图处理.

现在我想知道,如果有一种方法可以实现相同的(意思是:使用内联来添加/编辑属于账单的项目)使用基于类的视图(而不是管理界面).

django inline-formset django-class-based-views

55
推荐指数
3
解决办法
3万
查看次数

django模型表.包括相关模型的字段

我有一个名为Student的模型,它有一些字段,与用户的一个OneToOne关系(django.contrib.auth.User).

class Student(models.Model):

    phone = models.CharField(max_length = 25 )
    birthdate = models.DateField(null=True) 
    gender = models.CharField(max_length=1,choices = GENDER_CHOICES) 
    city = models.CharField(max_length = 50)
    personalInfo = models.TextField()
    user = models.OneToOneField(User,unique=True)
Run Code Online (Sandbox Code Playgroud)

然后,我有一个模型的ModelForm

class StudentForm (forms.ModelForm):
    class Meta:
        model = Student
Run Code Online (Sandbox Code Playgroud)

使用Meta类中的fields属性,我设法只显示模板中的一些字段.但是,我可以指出要显示的用户字段吗?

有点像:

   fields =('personalInfo','user.username')
Run Code Online (Sandbox Code Playgroud)

目前没有显示任何内容.仅适用于StudentFields /

提前致谢.

python django django-forms

23
推荐指数
2
解决办法
2万
查看次数