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

如何使用Django Admin管理后臺(tái)導(dǎo)入CSV

 更新時(shí)間:2020年11月06日 16:15:00   作者:韓志超  
這篇文章主要介紹了如何使用Django Admin管理后臺(tái)導(dǎo)入CSV,幫助大家更好的理解和使用django框架,感興趣的朋友可以了解下

假設(shè)你需要允許在Hero管理頁面上導(dǎo)入CSV數(shù)據(jù)。為此,您需要添加一個(gè)指向更改Hero列表頁面的鏈接,點(diǎn)擊這個(gè)鏈接會(huì)跳轉(zhuǎn)到上傳頁面。你需要編寫一個(gè)處理POST請求的方法,來從CSV文件中獲取數(shù)據(jù)對象:

class CsvImportForm(forms.Form):
  csv_file = forms.FileField()
@admin.register(Hero)
class HeroAdmin(admin.ModelAdmin, ExportCsvMixin):
  ...
  change_list_template = "entities/heroes_changelist.html"
  def get_urls(self):
    urls = super().get_urls()
    my_urls = [
      ...
      path('import-csv/', self.import_csv),
    ]
    return my_urls + urls
  def import_csv(self, request):
    if request.method == "POST":
      csv_file = request.FILES["csv_file"]
      reader = csv.reader(csv_file)
      # Create Hero objects from passed in data
      # ...
      self.message_user(request, "Your csv file has been imported")
      return redirect("..")
    form = CsvImportForm()
    payload = {"form": form}
    return render(
      request, "admin/csv_form.html", payload
    )

然后創(chuàng)建模板文件entities/heroes_changelist.html,以覆蓋原有的admin/change_list.html:

{% extends 'admin/change_list.html' %}
{% block object-tools %}
  <a href="import-csv/" rel="external nofollow" >Import CSV</a>
  <br />
  {{ block.super }}
{% endblock %}

最后,創(chuàng)建上傳頁面csv_form.html:

{% extends 'admin/base.html' %}
{% block content %}
  <div>
    <form action="." method="POST" enctype="multipart/form-data">
      {{ form.as_p }}
      {% csrf_token %}
        <button type="submit">Upload CSV</button>
    </form>
  </div>
  <br />
{% endblock %}

修改完后,會(huì)在更改Hero后臺(tái)列表頁面上會(huì)有一個(gè)Import CSV的鏈接.

點(diǎn)擊后上傳頁面顯示如下。

以上就是如何使用Django Admin管理后臺(tái)導(dǎo)入CSV的詳細(xì)內(nèi)容,更多關(guān)于Django Admin導(dǎo)入CSV的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論

陇川县| 扎鲁特旗| 呼和浩特市| 冀州市| 公主岭市| 镇沅| 庆城县| 凌海市| 武清区| 昌吉市| 安龙县| 鞍山市| 临江市| 岳池县| 肥乡县| 北宁市| 得荣县| 台北县| 舒兰市| 日照市| 上林县| 博白县| 开封县| 资溪县| 海原县| 乌鲁木齐县| 曲水县| 龙岩市| 福鼎市| 清水县| 长海县| 城口县| 北辰区| 彭水| 凭祥市| 凌海市| 望谟县| 唐山市| 禄丰县| 潼关县| 鹤山市|