Динамическая боковая панель - Как автоматически добавлять данные из базы данных в мою боковую панель
Это мой первый проект с Django. Я работаю над системой стипендий, в которой администратор имеет возможность добавлять в систему новые страны, которые предлагают стипендии. На уровне базы данных все работает хорошо. Я могу добавить новую страну и сохранить ее. Однако она автоматически должна быть добавлена в боковую панель панели администратора (шаблоны). Но этого не происходит
Вот мой код views.py для добавления и сохранения новой страны
def add_country(request):
user = request.user
if request.method == 'POST':
form = CountryForm(request.POST)
if form.is_valid():
form.save()
print(form.cleaned_data)
return redirect('dashboard.html') #redirect to be changed
else:
form = CountryForm()
return render(request, 'add-country.html', {
"form":form
})
class CountryListView(ListView):
template_name = "base.html"
models = Country
context_object_name = "countrys"
HTML КОД
<li><a href="#" class="ttr-material-button">
<span class="ttr-icon"><i class="ti-email"></i></span>
<span class="ttr-label">Countries</span>
<span class="ttr-arrow-icon"><i class="fa fa-angle-down"></i></span>
</a>
<ul>
{% for country in countrys %}
<li><a href="#" class="ttr-material-button"><span class="ttr-label">{{ countrys.name }}</span></a
</li>
{% endfor %}
Вы пытаетесь получить доступ к атрибуту name
каждой страны, используя countrys.name
вместо country.name
.
html-файл:
<li><a href="#" class="ttr-material-button">
<span class="ttr-icon"><i class="ti-email"></i></span>
<span class="ttr-label">Countries</span>
<span class="ttr-arrow-icon"><i class="fa fa-angle-down"></i></span>
</a>
<ul>
{% for country in countrys %}
<li><a href="#" class="ttr-material-button"><span class="ttr-label">{{ country.name }}</span></a
</li>
{% endfor %}
Также в списке CountryListView измените models = Country
на model = Country