Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django-无法在dropdownlist中检索数据库中的数据_Python_Mysql_Django - Fatal编程技术网

Python Django-无法在dropdownlist中检索数据库中的数据

Python Django-无法在dropdownlist中检索数据库中的数据,python,mysql,django,Python,Mysql,Django,嗨,这方面我真的需要帮助,我试了很多天,但还是做不到。我对Django很陌生。 问题:我无法检索MySQL数据库中的数据以在下拉列表中显示它。有人能帮我吗?非常感谢 models.py Views.py exampaper.html mySQL表 mysql> SELECT * from exampapersnew_paper; +-----------+------+----------+--------+ | id | year | month | number |

嗨,这方面我真的需要帮助,我试了很多天,但还是做不到。我对Django很陌生。

问题:我无法检索MySQL数据库中的数据以在下拉列表中显示它。有人能帮我吗?非常感谢

models.py

Views.py

exampaper.html

mySQL表

mysql> SELECT * from exampapersnew_paper;
+-----------+------+----------+--------+
| id        | year | month    | number |
+-----------+------+----------+--------+
| 200801001 | 2008 | November |      1 |
| 200801002 | 2008 | November |      2 |
| 200901001 | 2009 | November |      1 |
+-----------+------+----------+--------+
3 rows in set (0.00 sec)

render函数需要传递一些上下文。您只是表示将渲染它的位置,而不是上下文。 例如:


请注意,这里的类别是在list.html中呈现的,因为上下文通过了呈现函数。

请在您的选择中尝试此操作

{% if paper %}
{% for p in paper %}
    <option value="{{ p.id }}">{{ p.year }} {{ p.month }} Paper {{ p.number }} </option>
{% endfor %}
{% endif %}
{%if纸张%}
{纸张%中p的百分比}
{{p.year}{p.month}}论文{{p.number}
{%endfor%}
{%endif%}
也要完成本教程


django模型还有一个默认的主键属性,您也可以使用它。

首先,最好用大写字母命名您的类(
class Paper(models.model)

其次,我认为您的url应该类似于
url(r'^exampapersNew/?paper\u id=/',views.EMaths\u菜单)

在纸张id前面打问号,以便通过request.get.get('纸张id')获取纸张id


我正在尽我最大的努力帮助你,但没有所有的代码,我不明白你想做什么。请将您的代码推送到github并让我知道。

您没有通过
上下文
返回render(请求,'exampapersNew/exampaper.html',{“paperS”:paperS})将变量
z
传递到模板@JPG我还有其他方法可以这样做吗?@eddwinpaz尝试了这个方法,但仍然无法工作我也尝试了这个方法,没有显示任何内容。您可以显示您的表单吗。py是元名称文件?您的文件来自何处?将文件更改为文件是文件吗?我以为文件是另一个需要申报的变量,但仍然没有显示T.T.。我真的不知道是什么wrong@Gerry它将是request.GET.GET('paper_id'),可能会将上下文设置为context={“paper”:obj_list,“name”:pname},并且只将上下文作为呈现发送到模板(request,'exampapersNew/exampaper.html',context)更改为已编辑,在“选择列表”中它仍不显示我尝试了此操作,它对我有效,请尝试清除缓存并尝试在html中使用{%debug%}查看论文中的内容。我之前在我的应用程序中安装了tastypie api,我不确定这是否是原因?
        <form id="form1" method="GET">
      {% csrf_token %}
      <u>SELECT YEAR</u><br><br>
      <select>
        {% if paper %}
        {% for p in paper %}
            <option value="{{ p.id }}">{{ p.year }} {{ p.month }} Paper {{ p.number }}</option>
        {% endfor %}
        {% endif %}
      </select>
    </form>
urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^feedback/', include('feedback.urls')),
  url(r'^exampapersNew/', include('exampapersNew.urls')),
  url(r'^$', views.HomeView, name = 'home'),
  url(r'^feedback', views.FeedbackM, name = 'feedback'),
  url(r'^exampapersNew', views.ExampapersNewView, name = 'exampapersNew'),
  url(r'^frequentlyasked', views.FrequentlyaskedView, name = 'frequentlyasked'),
  url(r'^api/', include(v1_api.urls)),

  url(r'^exampapersNew/<int:paper_id>/', views.EMaths_Menu, name = 'paper_archive'),
  url(r'^formula', views.e_math_concept, name = 'formula'),
]
class DropdownForm(forms.Form):
class Meta:
    model = paper
    fields = ['id', 'year', 'month', 'number']
mysql> SELECT * from exampapersnew_paper;
+-----------+------+----------+--------+
| id        | year | month    | number |
+-----------+------+----------+--------+
| 200801001 | 2008 | November |      1 |
| 200801002 | 2008 | November |      2 |
| 200901001 | 2009 | November |      1 |
+-----------+------+----------+--------+
3 rows in set (0.00 sec)
def product_list(request):
    category = Category.objects.all()
     context = {
               'category': category,
    }
    return render(request, 'shop/product/list.html', context)
{% if paper %}
{% for p in paper %}
    <option value="{{ p.id }}">{{ p.year }} {{ p.month }} Paper {{ p.number }} </option>
{% endfor %}
{% endif %}