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

如何从内联表单集中在模板中显示视频?

如何解决如何从内联表单集中在模板中显示视频?

我有一个包含内嵌表单集的表单,但无法显示从表单上传的模板中的视频。我将在模板中的 html 行中添加什么作为源,以便显示视频上传?谢谢。

models.py:

class Profile(models.Model):
    user = models.OnetoOneField(User,on_delete=models.CASCADE)
    first_name = models.CharField(max_length=100,blank=True)
    last_name = models.CharField(max_length=100,blank=True)
    bio = models.TextField(max_length=150,null=True)
    phone_number = models.CharField(max_length=50,null=True,blank=True)


    def __str__(self):
        return self.user.username


class MultipleFileUpload(models.Model):
    file_uploads = models.ForeignKey(Profile,on_delete=models.CASCADE)
    video = models.FileField(null=True,blank=True,upload_to='videos')

    def __str__(self):
        return self.user.username

@receiver(post_save,sender=User)
def update_profile_signal(sender,instance,created,**kwargs):
    if created:
        Profile.objects.create(user=instance)

@receiver(post_save,sender=User)
def save_user_profile(sender,**kwargs):
    instance.profile.save()

forms.py:

class EditProfile(forms.ModelForm):
    
    class Meta:
        model = Profile

        fields = ['bio','phone_number']

class ProfileUpdateFormset(forms.ModelForm):
    class Meta:
        model = MultipleFileUpload

        fields = ['video']

views.py:

def edit(request,id):
    all_objects = get_object_or_404(Profile,id=id)
    ProfileFormset = inlineformset_factory(Profile,MultipleFileUpload,fields=('video',),can_order=False,can_delete=True,extra=1)
    if request.method == 'POST':
        form1 = EditProfile(request.POST or None,instance=all_objects)
        formset = ProfileFormset(request.POST,request.FILES,instance=all_objects)
        if form1.is_valid() and formset.is_valid():
            form1.save()
            formset.save()
            return HttpResponseRedirect(".")
    form1 = EditProfile(instance=all_objects)
    formset = ProfileFormset(instance=all_objects)
    context = {
            'form1': form1,'formset': formset,}
    return render(request,'accounts/edit.html',context)

html:

<video width="350" height="200" source src="{{ user.profile.file_uploads.video.url }}" controls></video></p>

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