django将图片上传数据库后在前端显式的方法
作者:fearless11
今天小编就为大家分享一篇django将图片上传数据库后在前端显式的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
1、使用ImageField先安装pillow模块
pip install pillow
2、在app的models中设置
class Image(models.Model): pic_name=models.CharField('图片',max_length=40) pic_path=models.ImageField(upload_to="pic_folder/",default='pic_folder/None/no_image.pig')
3、在app的view中设置获取图片的方法
def upload_pic(request): pic=Image.objects.all() return render(request,'blog/image.html',{'pic':pic})
4、在settings中设置
1、添加media模板 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(os.path.dirname(__file__), 'templates'),os.path.join(os.path.dirname(__file__), 'static'), ], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'django.template.context_processors.media', ], }, }, ] 2、设置media的路径 MEDIA_URL='media/' MEDIA_ROOT=os.path.join(BASE_DIR,'media').replace('\\','/')
5、在app的urls中设置
from django.conf.urls.static import static from django.conf import settings urlpatterns = [ url(r'^pic$', views.upload_pic, name='upload_pic') ]+static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
通过admin登录后上传图片,会在站点下生成media/pic_folder的目录
以上这篇django将图片上传数据库后在前端显式的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。