我是网络开发人员的初学者,这次我真的需要帮助,因为我使用Django,我有智能选择的问题。我使用此软件包允许用户选择依赖于国家/地区的城市。 我已经安装了,我确实像他说的那样,它在管理页面中工作但不幸的是,当我访问我的网站时,他们不能工作
model.py:
class Continent(models.Model):
continent = models.CharField(max_length=200)
def __unicode__(self):
"pour retourner Site"
return self.continent
class Country (models.Model):
continent = models.ForeignKey(Continent)
country = models.CharField(max_length=45)
def __unicode__(self):
return self.country
class Site(models.Model):
nom = models.CharField(max_length=100)
adresseSt = models.CharField(max_length=100)
country = models.ForeignKey(Continent, default=1 )
ville = ChainedForeignKey(
Country,
chained_field="country",
chained_model_field="continent",
show_all = False,
auto_choose = True
)
codePostale = models.IntegerField(max_length=5)
siege = models.NullBooleanField(default=False)
telephone = models.IntegerField(max_length=10, null=True,blank = True)
fax = models.IntegerField(max_length=10, null=True, blank=True)
email = models.EmailField(max_length=150, null=True, blank=True)
Correspondant = models.CharField(max_length=100, null=True, blank=True)
secteur = models.CharField(max_length=100, null=True, blank=True)
codeClient = models.ForeignKey('Client')
contact = models.ManyToManyField(Contact, blank=True, null=True, through='Emploi')
def __unicode__(self):
"pour retourner Site"
adresse = self.nom
return adresse
views.py:
class SiteForm(forms.ModelForm):
class Meta:
model = Site
exclude = ['siege' ,'contact']
def ajouterSt(request):
if request.method == 'POST':
form = SiteForm(request.POST or None)
if form.is_valid():
save_it = form.save(commit=False)
save_it.save()
return render(request, 'gestion/home.html')
else:
form = SiteForm()
return render(request, 'gestion/ajouterSt.html', locals())
和模板:ajouterSt
{% extends 'base.html' %}
{% block content %}
<h2> formulaire </h2>
<form action="/ajouterSt/" method="POST">
{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Submit" />
</form>
{% endblock %}
答案 0 :(得分:0)
可能你必须在你的网页上实现一些javascript。与工作管理页面比较。那里加载了哪些javascript文件?你也在页面上加载它们吗?
答案 1 :(得分:0)
更新 - 2017年5月
抱歉,截至目前情况有所改变,我的表单也拒绝加载,但是加载了一段时间,所以你必须在 jquery 之后包含下面的标记,包含 chainedfk.js
的标记这对于django 1.10.5和Django 1.11都很有效 - (这篇文章的最新版本)
<script type="text/javascript" src="{% static 'smart-selects/admin/js/bindfields.js' %}"></script>