Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Django有像视频场这样的东西吗?_Python_Django_Django Models_Django Forms - Fatal编程技术网

Python 在Django有像视频场这样的东西吗?

Python 在Django有像视频场这样的东西吗?,python,django,django-models,django-forms,Python,Django,Django Models,Django Forms,因此,我最近一直在制作一个网站,我想让人们上传视频并让我显示它们,就像我使用图像字段一样。然而我发现,视场不是一件事。到目前为止,我已经使用了FileField,它正在上传到正确的文件夹中,但是我不知道如何像ImageField那样显示视频 我想使用专门为视频文件制作的东西,但到目前为止,我还没有在网上找到任何关于视频文件的东西 这是我的模型 class Post(models.Model): # ... 这里还有其他东西 video\u file=models.FileField(上传到cla

因此,我最近一直在制作一个网站,我想让人们上传视频并让我显示它们,就像我使用
图像字段
一样。然而我发现,
视场
不是一件事。到目前为止,我已经使用了
FileField
,它正在上传到正确的文件夹中,但是我不知道如何像
ImageField
那样显示视频

我想使用专门为视频文件制作的东西,但到目前为止,我还没有在网上找到任何关于视频文件的东西

这是我的模型

class Post(models.Model):
# ... 这里还有其他东西
video\u file=models.FileField(上传到class='post\u files',blank=True,null=True)
所以我的问题是:在Django有一个
视频文件吗?

我同意。这是为那些想在他们的项目中播放视频的初学者和中级开发人员准备的

  • Django中没有
    视频字段
  • 您当然可以使用
    FileField
  • 在模板中,只需添加以下内容:

    <video width="500px" height="500px" controls>
         <source src="{{ post.video_file.url }}" type="video/mp4">
    </video>
    
    
    

    希望这有帮助。

    除了Priyanshu答案,如果您需要在Django admin中显示mp4,您可以使用以下代码:

    class MyVideoAdmin(admin.ModelAdmin):
        list_display = ('id', 'video_tag', 'comment', )
    
        def video_tag(self, obj):
            if obj.video:
                return format_html('<a href="{}">Link to video</a><video height="200px" controls><source src="{}" type="video/mp4"></video>'.format(obj.video.url, obj.video.url))
        video_tag.short_description = 'Video'
    
    admin.site.register(MyVideo, MyVideoAdmin)
    
    类MyVideoAdmin(admin.ModelAdmin):
    列表显示=('id','video\u tag','comment',)
    def视频标签(自身、obj):
    如果是obj.video:
    返回格式_html(“”.format(obj.video.url,obj.video.url))
    video_tag.short_description='video'
    管理员站点注册(MyVideo,MyVideoAdmin)
    
    Django中没有内置这样的字段,您希望从这样的字段中获得什么?我希望用户能够上传视频,并在帖子中显示它们。例如,如果这是我的模型`image=models.ImageField(upload_to='post_files',blank=True,null=True)`中的一行,我可以使用
    {%post.image.url%}
    或其他任何东西,它将显示图像。但是我想为视频做这件事。没有什么能阻止你使用s文件字段来做这件事。在页面上播放视频非常简单,只需包含一个
    video
    标记,并将文件url作为源。