Halo Orang-Orang Luar Biasa!
Saya sedang membuat dasbor untuk situs web saya, di bagian kiri, saya memiliki menu yang berisi beberapa item: Home
, Messenger
, Job Offers
....
Saat membuat akun, Pengguna dapat memilih item mereka, lalu memesan atau menghapus.
Saya memiliki model Menu
& Item
,
class Menu(models.Model):
items = models.ManyToManyField('Item',blank=True)
class Item(models.Model):
name = models.CharField(max_length=100)
unique_key = models.CharField(max_length=100,unique=True)
url = ......
Untuk menu pengguna, di base_template
saya menampilkan item pengguna saat ini dengan for loop. Dengan kelas CSS saya ingin menyorot tampilan saat ini, item saat ini.
Saat pengguna mengunjungi messenger-nya, saya ingin menyorot item messenger tersebut dengan kelas CSS.
<ul>
{% for item in user.menu.items.all %}
<li class='{% block item.unique_key %}{% endblock %}'>
<a href="/id{{item.url}}"> {{item.name}}</a>
</li>
{% endfor %}
</ul>
Sekarang, ketika berada di messenger.html
misalnya, mengetahui bahwa saya memiliki unique_key
untuk messenger bernama item_messenger
, saya melakukannya
{% block 'item_messenger' %}active{% endfor%}
Tidak berfungsi, item Messenger
atau apa pun yang saya pilih tidak disorot, saya heran kenapa? Apakah ada cara lain untuk mencapainya?
Petunjuk apa pun akan sangat membantu, terima kasih sebelumnya!
<li class="{% if active_key == item.unique_key %}active{% endblock %}">
- person Daniel Roseman   schedule 01.06.2018<li class = '{% block item_name %} {% endblock %}'>
. Lalu di bagian atas setiap halaman, saya menambahkan{% block item_name %} active {% endblock %}
. Saya sudah memiliki semua halaman saya dengan tagblock
di bagian atas, itulah sebabnya saya harus menggunakanblock
dalam satu lingkaran. Cara Anda menunjukkannya kepada saya, sudah saya pikirkan, tetapi saya harus memilikiactive_key
sebagai variabel konteks di setiap tampilan; Saya memiliki banyak pandangan. - person   schedule 01.06.2018