微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何自动将配置文件添加到 ManyToManyField?

如何解决如何自动将配置文件添加到 ManyToManyField?

我有这个课程模型

class Minicursos(models.Model):
     nome_minicurso = models.CharField(max_length=150)

     resumo = models.TextField(max_length=500,default = "")
     descricao = models.TextField(max_length=500,default = "")

     imagem_minicurso = models.ImageField(upload_to="gallery",height_field=None,width_field=None,max_length=None,default = "")
     video_explicativo = models.FileField(upload_to="video/%y",default="",)

     carga_horaria = models.IntegerField()

     alunos = models.ManyToManyField(Profile,'Alunos')

我的html是这样的

{% if user.is_authenticated %}
        <form id="ingressar-form" method="POST">
            {% csrf_token %}
            {{ form.as_p }}
            <a href="/minicurso/{{minicurso.id}}/aulas.html"><button id="ingressar" type="submit" value="Create">INGRESSAR</button></a>
        </form>
{% else %}
    <strong><p>Para ingressar no minicurso faça <a href="/login">Login</a> ou <a href="/register">Registre-se</a>.</p></strong>
{% endif %}

我希望当用户点击“ingressar”他的个人资料时,它会被添加到外地学生(alunos)

我试过了

if request.method == 'POST':
    
    aluno = Minicursos.alunos.add(User)
    aluno.save()

但我收到此错误

aluno = Minicursos.alunos.add(用户) AttributeError: 'ManyToManyDescriptor' 对象没有属性 'add'

有人可以帮我吗!?

解决方法

您只能将对象添加到模型的实例中,而不能添加到类对象中。所以你首先需要创建一个 Minicursos 的实例。

您可以查看official documentation以获得详细说明。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。