欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django表單提交后實(shí)現(xiàn)獲取相同name的不同value值

 更新時(shí)間:2020年05月14日 11:24:40   作者:yes1cpp  
這篇文章主要介紹了Django表單提交后實(shí)現(xiàn)獲取相同name的不同value值,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

i前端:nput_test.html

<!DOCTYPE html>
<html>
<head lang="en">
  <meta charset="UTF-8">
  <title>Search</title>
  <script>
 
  </script>
</head>
<body>
  <div><p>{{ result }}</p></div>
  <form action="" method="post">{% csrf_token %}
    <input type="text" name="key">
    <input type="text" name="key">
    <input type="submit" value="Search" >
  </form>
</body>
</html>

兩個(gè)<input >標(biāo)簽name都是'key'

后臺(tái):Django views.py

def setting(request):
  if request.method == 'POST':
    result_list = request.POST.getlist('key', '')
    result = str(result_list)
    return render_to_response('input_test.html', locals(), context_instance=RequestContext(request))
  else:
    return render_to_response('input_test.html', locals(), context_instance=RequestContext(request))

運(yùn)行后,在瀏覽器表單中輸入:

打開(kāi)chrome ,提交表單,看FormData,其實(shí)瀏覽器已經(jīng)向后臺(tái)提交了兩個(gè)name 為'key '的值。


后臺(tái)也成功接收到一個(gè)列表 ['1', '2']。

主要是這個(gè)API request.POST.getlist(),可以接收到所有共享同一個(gè)name的value,

QueryDict.getlist(key, default)¶

Returns the data with the requested key, as a Python list. Returns an empty list if the key doesn't exist and no default value was provided.


It's guaranteed to return a list of some sort unless the default value was no list.

參考:http://stackoverflow.com/questions/14348321/getting-distinct-values-from-inputs-that-share-the-same-name

補(bǔ)充知識(shí):django中form從后端查詢回顯到前端以及表單的提交到服務(wù)器操作

這個(gè)表格是我以下代碼出現(xiàn)的效果,以下代碼也可以實(shí)現(xiàn)圖中修改保存刪除操作。

1:首先你得創(chuàng)建一張表,在這里建表語(yǔ)句我就不再寫(xiě)了,再也簡(jiǎn)單不過(guò)了。(別忘了加點(diǎn)數(shù)據(jù)哦?。?/p>

2:將表的數(shù)據(jù)通過(guò)view.py的函數(shù)返回到前端。在這里stu是表名,將所有的返回結(jié)果all通過(guò)一個(gè)data字典傳到前端的all里面去

def showstu(request):
  all=stu.objects.all()
  data={
    "all":all
  }

return render(request,"searchstu.html",context=data)

3:有數(shù)據(jù)我們就可以拿到前端來(lái)展示了。

4 :新建一個(gè)searchstu.html文件,用來(lái)展示用的。

這個(gè)是最簡(jiǎn)單的表用來(lái)提示用的

 <table border="1" cellpadding="0" >
      <tr >

      <td>姓名</td>
      <td>年齡</td>
      <td>性別</td>
      <td>班級(jí)</td>
      <td colspan="3">操作</td>
      </tr>
</table>

這個(gè)表是實(shí)現(xiàn)我們的功能的表

{% for student in all %}

<form action="{% url 'homework:updatestu' %}" method="get" >
<table border="1" cellpadding="0">
<tr><td>
 <input type="text" name="s_id" value={{student.id}} style="display:none">
</td><td>
  <input type="text" name="s_name" value={{student.stu_name}} >
</td><td>
  <input type="text" name="s_age"value={{ student.stu_age}}>
</td><td>
  <input type="text" name="s_sex"value={{ student.stu_sex}}>
</td><td>
  <input type="text" name="s_cla" value={{ student.stu_class}}>
</td><td>
    <input type="button" id="a" value="修改" οnclick="update(this)">

#在這里用了兩種方法提交到服務(wù)器,一種是submit提交,還有一種是超鏈接提交。
</td><td><input type="submit" value="保存" οnclick="save(this)">
</td><td><a href="/homework/delstu/{{ student.id }}" rel="external nofollow" >
   <input type="button" value="刪除"></a>
</td></tr>
    </table>
    </form>

{% endfor %}

好了查詢功能已經(jīng)做好了我們可以通過(guò)url訪問(wèn)了

url(r"^showstu/", views.showstu,name="showstu"),

現(xiàn)在起要操作剩下的功能了,在這里的一個(gè)比較笨的辦法,要想實(shí)現(xiàn)點(diǎn)擊對(duì)應(yīng)的按鈕刪除或者修改哪一個(gè),就要把每行都設(shè)置成一個(gè)form提交表單。

因此我把form放在for循環(huán)內(nèi)部,這樣循環(huán)一條就會(huì)多一個(gè)form表單。

5:實(shí)現(xiàn)提交后后端的處理函數(shù),通過(guò)get獲取。

更新操作

def updatestu(request):
  id = request.GET.get("s_id")
  name=request.GET.get("s_name")
  sex=request.GET.get("s_sex")
  age=request.GET.get("s_age")
  cla=request.GET.get("s_cla")

#獲取數(shù)據(jù)庫(kù)中這個(gè)id將和這個(gè)id有關(guān)的數(shù)據(jù)設(shè)置成你get到前面的值,別忘記保存!修改完后直接刷新這個(gè)頁(yè)面也就是重定向到這個(gè)頁(yè)面

  stu1=stu.objects.filter(pk=id).first()
  stu1.stu_age=age
  stu1.stu_class=cla
  stu1.stu_sex=sex
  stu1.stu_name=name
  stu1.save()
  return HttpResponseRedirect("/homework/showstu")

刪除操作

def delstu(request,id):
  stu1=stu.objects.filter(pk=id).first()
  stu1.delete()
  return HttpResponseRedirect("/homework/showstu")

以上這篇Django表單提交后實(shí)現(xiàn)獲取相同name的不同value值就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于python中staticmethod和classmethod的區(qū)別(詳解)

    基于python中staticmethod和classmethod的區(qū)別(詳解)

    下面小編就為大家?guī)?lái)一篇基于python中staticmethod和classmethod的區(qū)別(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • Python中yield關(guān)鍵字的理解與使用

    Python中yield關(guān)鍵字的理解與使用

    yield關(guān)鍵字用于創(chuàng)建生成器函數(shù),一種高效利用內(nèi)存的函數(shù)類型,可以像迭代器對(duì)象一樣使用,本文主要介紹了Python中的yield關(guān)鍵字的應(yīng)用,需要的可以參考下
    2023-08-08
  • python 利用jieba.analyse進(jìn)行 關(guān)鍵詞提取

    python 利用jieba.analyse進(jìn)行 關(guān)鍵詞提取

    這篇文章主要介紹了python 利用jieba.analyse進(jìn)行關(guān)鍵詞提取的方法,幫助大家更好的利用python,感興趣的朋友可以了解下
    2020-12-12
  • python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà)

    python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà)

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)圖片轉(zhuǎn)字符畫(huà),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-02-02
  • 老生常談python字典用法

    老生常談python字典用法

    python 創(chuàng)建字典可以使用 dict 函數(shù),或者使用花括號(hào),用花括號(hào)的方式更為常見(jiàn)。本文給大家介紹python字典用法,感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • 一文詳解Django信號(hào)機(jī)制的工作原理

    一文詳解Django信號(hào)機(jī)制的工作原理

    Django 信號(hào)(signals)是一種實(shí)現(xiàn)解耦的有力工具,它允許某些發(fā)生的事件通知其他部分的代碼,本文將深入探討 Django 信號(hào)的工作原理、如何定義和接收信號(hào),以及如何在項(xiàng)目中有效地使用它們,需要的朋友可以參考下
    2023-11-11
  • Scrapy框架使用的基本知識(shí)

    Scrapy框架使用的基本知識(shí)

    今天小編就為大家分享一篇關(guān)于Scrapy框架使用的基本知識(shí),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2018-10-10
  • Python基于unittest實(shí)現(xiàn)測(cè)試用例執(zhí)行

    Python基于unittest實(shí)現(xiàn)測(cè)試用例執(zhí)行

    這篇文章主要介紹了Python基于unittest實(shí)現(xiàn)測(cè)試用例執(zhí)行,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Python Flask框架模板操作實(shí)例分析

    Python Flask框架模板操作實(shí)例分析

    這篇文章主要介紹了Python Flask框架模板操作,結(jié)合實(shí)例形式較為詳細(xì)的分析了Python Flask框架使用Jinja2模板步驟及相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • python 檢查是否為中文字符串的方法

    python 檢查是否為中文字符串的方法

    今天小編就為大家分享一篇python 檢查是否為中文字符串的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12

最新評(píng)論