最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中Django文件上傳方法詳解

 更新時間:2020年08月05日 07:53:11   作者:愛喝馬黛茶的安東尼  
在本篇文章里小編給大家整理了一篇關(guān)于python中Django文件上傳方法,有興趣的朋友們可以學(xué)習(xí)下。

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ù)會自動把文件的名稱修改為日期型的名稱,不會重名。

相關(guān)推薦:《Python視頻教程》

zz.png

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'))
]

效果圖

xx.png

知識點(diǎn)擴(kuò)展:

最簡單的文件下載功能的實(shí)現(xiàn)

將文件流放入HttpResponse對象即可,如

def file_download(request):
 # do something...
 with open('file_name.txt') as f:
  c = f.read()
 return HttpResponse(c)

到此這篇關(guān)于python中Django文件上傳方法詳解的文章就介紹到這了,更多相關(guān)Django文件上傳方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 實(shí)踐Python的爬蟲框架Scrapy來抓取豆瓣電影TOP250

    實(shí)踐Python的爬蟲框架Scrapy來抓取豆瓣電影TOP250

    這篇文章主要介紹了實(shí)踐Python的爬蟲框架Scrapy來抓取豆瓣電影TOP250的過程,文中的環(huán)境基于Windows操作系統(tǒng),需要的朋友可以參考下
    2016-01-01
  • Pycharm中Python環(huán)境配置常見問題解析

    Pycharm中Python環(huán)境配置常見問題解析

    這篇文章主要介紹了Pycharm中Python環(huán)境配置常見問題,結(jié)合圖文形式分析了Pycharm中Python環(huán)境配置模塊路徑問題、虛擬環(huán)境創(chuàng)建、配置遠(yuǎn)程服務(wù)器、連接數(shù)據(jù)庫等常見問題與操作方法,需要的朋友可以參考下
    2020-01-01
  • UI自動化定位常用實(shí)現(xiàn)方法代碼示例

    UI自動化定位常用實(shí)現(xiàn)方法代碼示例

    這篇文章主要介紹了UI自動化定位常用實(shí)現(xiàn)方法代碼示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • python顯示天氣預(yù)報

    python顯示天氣預(yù)報

    這篇文章主要介紹了python顯示天氣預(yù)報功能,python2.7運(yùn)行通過,需要的朋友可以參考下
    2014-03-03
  • python3讀取csv和xlsx文件的實(shí)例

    python3讀取csv和xlsx文件的實(shí)例

    今天小編就為大家分享一篇python3讀取csv和xlsx文件的實(shí)例,具有很好的參考價值,希望對的大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python 框架 FastAPI詳解

    Python 框架 FastAPI詳解

    FastAPI 是一個現(xiàn)代、快速且高性能的 Web 框架,用于 Python 3.6+,基于 Python 類型提示構(gòu)建 API,它通過 Starlette 和 Pydantic 優(yōu)化,支持多種 HTTP 方法、異步編程、數(shù)據(jù)驗(yàn)證和自動生成交互式文檔,FastAPI 適合快速開發(fā)高性能、可擴(kuò)展的 Web 服務(wù)
    2024-11-11
  • Python遠(yuǎn)程視頻監(jiān)控程序的實(shí)例代碼

    Python遠(yuǎn)程視頻監(jiān)控程序的實(shí)例代碼

    這篇文章主要介紹了Python遠(yuǎn)程視頻監(jiān)控程序的實(shí)例代碼,需要的朋友可以參考下
    2019-05-05
  • 2022最新Python日志庫logging總結(jié)

    2022最新Python日志庫logging總結(jié)

    這篇文章主要介紹了2022最新Python日志庫logging總結(jié),Python logging 庫設(shè)計(jì)的真的非常靈活,如果有特殊的需要還可以在這個基礎(chǔ)的 logging 庫上進(jìn)行改進(jìn),創(chuàng)建新的 Handler 類解決實(shí)際開發(fā)中的問題,需要的朋友可以參考下
    2022-05-05
  • 使用Python編寫提取日志中的中文的腳本的方法

    使用Python編寫提取日志中的中文的腳本的方法

    這篇文章主要介紹了使用Python編寫提取日志中的中文的腳本的方法,該腳本包括過濾重復(fù)的字符行等功能,需要的朋友可以參考下
    2015-04-04
  • python lxml中etree的簡單應(yīng)用

    python lxml中etree的簡單應(yīng)用

    這篇文章主要介紹了python lxml中etree的簡單應(yīng)用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評論

酒泉市| 江华| 公安县| 丹阳市| 南宁市| 从化市| 慈利县| 无棣县| 响水县| 武义县| 凤山市| 略阳县| 大埔县| 江源县| 库尔勒市| 吉林省| 房山区| 渝中区| 聂荣县| 桦南县| 托克逊县| 深水埗区| 长武县| 当阳市| 安新县| 重庆市| 北京市| 通城县| 马边| 蓬莱市| 海原县| 长海县| 开平市| 徐水县| 固始县| 合水县| 兰西县| 天门市| 株洲市| 绥江县| 高雄县|