位置: 编程技术 - 正文

Python+django实现简单的文件上传(python django)

编辑:rootadmin

推荐整理分享Python+django实现简单的文件上传(python django),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python django iis,python3 django教程,django pycharm,python django iis,django pycharm,django pycharm,python django orm,python djang,内容如对您有帮助,希望把文章链接给更多的朋友!

今天分享一下Django实现的简单的文件上传的小例子。

步骤 &#;创建Django项目,创建Django应用 &#;设计模型 &#;处理urls.py 以及views.py &#;设计模板,设计表单 &#;运行项目,查看数据库

下面我们就一起来分别完成每一个小部分吧。

创建项目和应用

django-admin startproject Django_upload

django-admin startapp app

添加一个名为upload的目录,待会要用哦。

然后记得在settings.py 中的INSTALLED_APPS中加上'app',。注意那个小逗号就行了~~

设计模型

上传文件需要知道是谁上传的,上传了什么。所以我们的 模型很简单,一个用户名,一个文件名即可。如下app.models.py

模型创建完成了,接下来我们就赶紧同步一下数据库吧。命令很简单,由于我的Django版本是1.9.6的, 所以原来的

python manage.py syncdb 不能用了

我们可以使用下面的命令来代替

python manage.py makemigrations

python manage.py migrate

Python+django实现简单的文件上传(python django)

urls.py 以及 views.py

这两个文件就是为了实现MVC模型的V,C而存在的。 views.py 如下:

urls.py

一般来说我们会创建一个超级管理员,命令如下:

python manage.py createsuperuser

然后按照相应的提示进行创建就可以了。

设计模板以及表单

其实刚才就可以在views.py中看到一个为NormalUserForm的类,其存在的意义就是方便从request中取得我们需要的表单数据。而且,恐怕你也注意到了,NormalUserForm的字段和NormalUser模型是一样的呢。各中哲理自己品味吧 :-)

templates/register.html

这里面比较重要的地方有三点: &#;<form method="POST" enctype="multipart/form-data">: 表单特定的格式,注意上传数据的时候把enctype明确就可以

&#;{% csrf_token %}: 跨域请求,我们需要在表单标签的内部加上这个模板标签,而且要在views.py中配合render而不是render_to_response来实现

&#;{{ uf.as_p }}: 使用.as_p 方式的话,django就会按照默认的样式在模板页面输出表单的所有的字段。

调试,开启应用

好了,大部分的任务都做好了,下面就打开我们的开发服务器来验证一下吧。

python manage.py runserver

打开浏览器输入 &#;使用models.FileField()实现文件上传组件

&#;对应模型添加一个表单类,字段相同。这样对于表单数据的获取会更加更加的方便。uf = NormalUserForm(request.POST,request.FILES)。

&#;模板界面表单enctype格式,以及.as_p方式的在html页面上的表单输出

就是这样了!

本文链接地址:https://www.jiuchutong.com/biancheng/386179.html 转载请保留说明!

上一篇:Python Django使用forms来实现评论功能(django for)

下一篇:浅析Python中元祖、列表和字典的区别(python中元祖的用法)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络