中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

Django上傳文件的方法

小編給大家分享一下Django上傳文件的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來,先為南鄭等服務(wù)建站,南鄭等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為南鄭企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

Django上傳文件最簡單最官方的方法

1.配置media路徑

在settings.py中添加如下代碼:

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

2.定義數(shù)據(jù)表

import os
from django.db import models
from django.utils.timezone import now as timezone_now
def upload_to(instance, filename):
    now = timezone_now()
    base, ext = os.path.splitext(filename)
    ext = ext.lower()
    return f'quotes/{now:%Y/%m/%Y%m%d%H%M%S}{ext}'
class Quote(models.Model):
    class Meta:
        verbose_name = 'quote'
        verbose_name_plural = verbose_name
    author = models.CharField('author', max_length=200)
    quote = models.TextField('quote')
    picture = models.ImageField('picture', upload_to=upload_to, blank=True, null=True)
    def __str__(self):
        return self.quote

這里的upload_to函數(shù)會(huì)自動(dòng)把文件的名稱修改為日期型的名稱,不會(huì)重名。

Django上傳文件的方法

3.添加form表單

forms.py文件

from django import forms
from .models import Quote
class QuoteForm(forms.ModelForm):
    class Meta:
        model = Quote
        fields = '__all__'

4.編寫視圖代碼

from django.shortcuts import render, redirect
from .forms import QuoteForm
def add_quote(request):
    form = QuoteForm()
    if request.method == 'POST':
        form = QuoteForm(
            data=request.POST,
            files=request.FILES
        )
        if form.is_valid():
            form.save()
            return redirect('quote:add_quote')
    else:
        return render(request, 'quotes/add_quote.html', {
            'form': form
        })

5.編寫模板html代碼

<form action="{% url 'quote:add_quote' %}" method="post" enctype="multipart/form-data">
    {% csrf_token %}
    {{ form.as_p }}
    <button type="submit">save</button>
</form>

6.添加url映射

在app的目錄的urls.py添加
from django.urls import path
from quotes.views import add_quote
app_name = 'quote'
urlpatterns = [
    path('add/', add_quote, name='add_quote')
]

在項(xiàng)目目錄的urls.py文件添加

from django.urls import path, include
urlpatterns = [
    path('quotes/', include('quotes.urls', namespace='quote'))
]

效果圖

Django上傳文件的方法

以上是Django上傳文件的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文標(biāo)題:Django上傳文件的方法
瀏覽路徑:http://m.2m8n56k.cn/article14/jdcjge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司、營銷型網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、定制網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
主站蜘蛛池模板: 91亚洲国产 | 国产一级做a爰片在线看免费 | 中文字幕有码在线播放 | 天堂8资源8在线 | 热re66久久精品国产99热 | 成人在线观看一区 | 911国产自产精选 | 久久亚洲国产视频 | 国产在线欧美日韩精品一区二区 | 伊人爱爱网 | 欧美日韩视频免费播放 | 一本色道久久99一综合 | 91精品成人免费国产片 | 免费看一区二区三区 | 成人在线第一页 | 综合久久一区二区三区 | 成人免费一区二区三区视频软件 | 毛片免费观看的视频 | 日本一视频一区视频二区 | 久久综合中文字幕一区二区 | 国产高清在线观看视频手机版 | 女人扒开腿让男人捅啪啪 | 欧美一线免费http | 免费毛片a| 国产乱子精品免费视观看片 | 国产在线精品一区二区不卡 | 青青草福利视频 | 自拍一页| 日韩精品一区二区在线观看 | 美女视频黄色免费 | 欧美人与z0z0xxxx | 欧美 自拍 丝袜 亚洲 | 9久re在线观看视频精品 | 免费的一级片网站 | 日本国产最新一区二区三区 | 欧美另类极品 | 91情国产l精品国产亚洲区 | 国产欧美va欧美va香蕉在线 | 手机看片高清国产日韩片 | 久久免费视频6 | 国产欧美久久久另类精品 |