django - 数据驱动的下拉菜单 Django

标签 django database

我正在使用数据库“selectCountry”,我想选择数据库中的所有国家/地区名称以填充到 html 下拉菜单中。

下面是我的代码

   models.py

          class selectCountry(models.Model):
                 selectCountryoption = models.CharField(max_length = 30)


views.py
        def loadCountries(request):
         countries = selectCountry.objects.all()
         return render(request, 'register/bg-pages.html', {'countries': 
         countries})

html代码

           <form action=".">
            <select name="Country" id="searchOption">
                <option value="">---------</option>
                {% for country in countries %}
                <option value="{{ countries.selectCountryoption }}">{{ 
                   countries.selectCountryoption }}</option>
                {% endfor %}
            </select>
            <input type="submit" value="submit" name="submit"
         </form>
    </p>

问题是当我请求页面时,值没有填充到列表中。

最佳答案

您在 for 循环中使用了错误的值。

<option value="{{ countries.selectCountryoption }}">{{ 
               countries.selectCountryoption }}</option>

应该是

<option value="{{ country.selectCountryoption }}">{{ 
               country.selectCountryoption }}</option>

关于django - 数据驱动的下拉菜单 Django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55111686/

相关文章:

mysql - 表 "Products"有预定义的产品,用户可以自定义价格。如何避免数据冗余?

django - 在 Django 模型中使用 Choices 时,为什么要设置 max_length?

c++ - 如何创建 sqlite3 内存数据库?

python - Django 中自定义用户模型的 fields.E300 错误

python - Mongoengine 获取最新的()

javascript - 如何将现有 Dexie 数据库迁移到新的 Dexie 数据库或如何重命名 Dexie 数据库?

java - 从 Eclipse 将多行插入到 oracle 数据库中

php - PDO 连接到 MySQL 数据库被拒绝

Django - 使用新的消息框架给(离线)用户留言

python - 从 Django 模板访问 Model.objects 方法