使用 Django 国家以 Django 表单和模板显示标志
Display flags in Django form & templates with Django-countries
我正在使用 Django-countries,但我无法在我的 Django 表单或任何模板中在每个国家旁边显示国旗。
我很好地显示了国家列表,我在静态文件夹中正确设置了标志文件夹。但是无法显示标志。
在我的模型中我有:
PaysNaissance = CountryField(blank_label='Sélectionner un pays', verbose_name='Pays de naissance')
然后,我的表格显示这样的国家:
如您所见,none 标志出现在我的列表中。你对这个问题有什么想法吗?
设置配置良好,在我的模板中有:
<table style="width:100%">
<tbody>
<p></p>
<tr>
<th> Informations sur l'individu </th>
<th> Données renseignées </th>
</tr>
<tr>
<td>Pays de Naissance</td>
<td>{{personne.PaysNaissance}}</td>
</tr>
</tbody>
</table>
它显示:FR
但是如果我想显示标志,我设置 {{personne.PaysNaissance.flag}}
并且我有 /static/flags/fr.gif
.
所以为了显示标志我必须写:
<td><img src='{{personne.PaysNaissance.flag.url}}'/></td>
但是好像不行。
在我的表格部分:
<form class = "form" method='POST' action='' enctype="multipart/form-data"> {% csrf_token %} <br></br>
{{ form.as_p }}
{{birthday|date:"%d/%m/%Y" }}
<input type="submit" onclick="return confirm('Valider le formulaire ?')" />
</form>
你需要写:
<td><img src='{{personne.PaysNaissance.flag}}'/></td>
因为 {{ personne.PaysNaissance.flag }} 本身包含标志 url。你不需要额外写flag.url。
还可以做一件事:
使用:
<link rel="stylesheet" href="{% static 'flags/sprite.css' %}">
<td><i class="{{ personne.PaysNaissance.flag_css }}"></i></td>
这会起作用。
我正在使用 Django-countries,但我无法在我的 Django 表单或任何模板中在每个国家旁边显示国旗。
我很好地显示了国家列表,我在静态文件夹中正确设置了标志文件夹。但是无法显示标志。
在我的模型中我有:
PaysNaissance = CountryField(blank_label='Sélectionner un pays', verbose_name='Pays de naissance')
然后,我的表格显示这样的国家:
如您所见,none 标志出现在我的列表中。你对这个问题有什么想法吗?
设置配置良好,在我的模板中有:
<table style="width:100%">
<tbody>
<p></p>
<tr>
<th> Informations sur l'individu </th>
<th> Données renseignées </th>
</tr>
<tr>
<td>Pays de Naissance</td>
<td>{{personne.PaysNaissance}}</td>
</tr>
</tbody>
</table>
它显示:FR
但是如果我想显示标志,我设置 {{personne.PaysNaissance.flag}}
并且我有 /static/flags/fr.gif
.
所以为了显示标志我必须写:
<td><img src='{{personne.PaysNaissance.flag.url}}'/></td>
但是好像不行。
在我的表格部分:
<form class = "form" method='POST' action='' enctype="multipart/form-data"> {% csrf_token %} <br></br>
{{ form.as_p }}
{{birthday|date:"%d/%m/%Y" }}
<input type="submit" onclick="return confirm('Valider le formulaire ?')" />
</form>
你需要写:
<td><img src='{{personne.PaysNaissance.flag}}'/></td>
因为 {{ personne.PaysNaissance.flag }} 本身包含标志 url。你不需要额外写flag.url。
还可以做一件事:
使用:
<link rel="stylesheet" href="{% static 'flags/sprite.css' %}">
<td><i class="{{ personne.PaysNaissance.flag_css }}"></i></td>
这会起作用。