小编Kir*_*n S的帖子

具有反向外键的模型

我正在尝试为音乐家模型创建一个 ModelForm,从中必须可以为每个音乐家选择多个专辑。由于专辑是反向外键,我认为 ModelForm 不会将专辑值保存到数据库中。是否有任何可能的方法让这个工作

请帮助我并提前致谢

这是我的模型:

class musicianForm(forms.ModelForm):


   album=forms.ModelMultipleChoiceField(queryset=Musician.objects.all(),
                                           widget=forms.widgets.CheckboxSelectMultiple())


   class Meta:
       model = Musician
       fields = ('album','first_name','last_name','instrument')
Run Code Online (Sandbox Code Playgroud)

模型.py

from django.db import models

class Musician(models.Model):
    first_name = models.CharField(max_length=50)
    last_name = models.CharField(max_length=50)
    instrument = models.CharField(max_length=100)

class Album(models.Model):
    artist = models.ForeignKey(Musician, on_delete=models.CASCADE)
    name = models.CharField(max_length=100)
    release_date = models.DateField()
    num_stars = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)

管理员.py

class musicianAdmin(admin.ModelAdmin):
    form = musicianForm
Run Code Online (Sandbox Code Playgroud)

django

5
推荐指数
1
解决办法
1975
查看次数

标签 统计

django ×1