My asset_list html is like this
<code>
<div class="right">
<div class="search-container">
<input type="text" id="searchInput" placeholder="Search by AssetName..." aria-label="Search">
<button class="add-button" aria-label="Add Asset" id="addUserButton"><i class="fas fa-plus"></i> Add</button>
</div>
</code>
<code>
<div class="right">
<div class="search-container">
<input type="text" id="searchInput" placeholder="Search by AssetName..." aria-label="Search">
<button class="add-button" aria-label="Add Asset" id="addUserButton"><i class="fas fa-plus"></i> Add</button>
</div>
</code>
<div class="right">
<div class="search-container">
<input type="text" id="searchInput" placeholder="Search by AssetName..." aria-label="Search">
<button class="add-button" aria-label="Add Asset" id="addUserButton"><i class="fas fa-plus"></i> Add</button>
</div>
login database is like this , with roles admin and user
<code>class UserDetails(models.Model):
username = models.CharField(max_length=100, unique=True)
password = models.CharField(max_length=100) # Ideally, this should be hashed
role = models.CharField(max_length=45)
</code>
<code>class UserDetails(models.Model):
username = models.CharField(max_length=100, unique=True)
password = models.CharField(max_length=100) # Ideally, this should be hashed
role = models.CharField(max_length=45)
</code>
class UserDetails(models.Model):
username = models.CharField(max_length=100, unique=True)
password = models.CharField(max_length=100) # Ideally, this should be hashed
role = models.CharField(max_length=45)
views for asset list
<code>def asset_list(request):
users = Asset_Table.objects.all()
return render(request, 'asset_mng/asset_pro.html', {'users': users})
</code>
<code>def asset_list(request):
users = Asset_Table.objects.all()
return render(request, 'asset_mng/asset_pro.html', {'users': users})
</code>
def asset_list(request):
users = Asset_Table.objects.all()
return render(request, 'asset_mng/asset_pro.html', {'users': users})
I have 2 roles Admin and User , when Admin is logged in, I want to show admin side bar and if user is logged in , show user sidebar.
<code>{% include 'admin_sidebar.html'%} or {% include 'user_sidebar.html'%}
<div class="right">
<div class="search-container">
<input type="text" id="searchInput" placeholder="Search by AssetName..." aria-label="Search">
<button class="add-button" aria-label="Add Asset" id="addUserButton"><i class="fas fa-plus"></i> Add</button>
</div>
</code>
<code>{% include 'admin_sidebar.html'%} or {% include 'user_sidebar.html'%}
<div class="right">
<div class="search-container">
<input type="text" id="searchInput" placeholder="Search by AssetName..." aria-label="Search">
<button class="add-button" aria-label="Add Asset" id="addUserButton"><i class="fas fa-plus"></i> Add</button>
</div>
</code>
{% include 'admin_sidebar.html'%} or {% include 'user_sidebar.html'%}
<div class="right">
<div class="search-container">
<input type="text" id="searchInput" placeholder="Search by AssetName..." aria-label="Search">
<button class="add-button" aria-label="Add Asset" id="addUserButton"><i class="fas fa-plus"></i> Add</button>
</div>
Use an if
-clause to determine which role the logged-in user has:
<code>{% if user.role == "admin" %}
{% include 'admin_sidebar.html'%}
{% elif user.role == "user" %}
{% include 'user_sidebar.html'%}
{% endif %}
</code>
<code>{% if user.role == "admin" %}
{% include 'admin_sidebar.html'%}
{% elif user.role == "user" %}
{% include 'user_sidebar.html'%}
{% endif %}
</code>
{% if user.role == "admin" %}
{% include 'admin_sidebar.html'%}
{% elif user.role == "user" %}
{% include 'user_sidebar.html'%}
{% endif %}
Pass a variable from Django to the Jinja2 templating which tells you if you want admin or not and then use the conditional statements within Jinja2:
<code>{% if admin %}
{% include 'admin_sidebar.html'%}
{% else %}
{% include 'user_sidebar.html'%}
{% endif %}
</code>
<code>{% if admin %}
{% include 'admin_sidebar.html'%}
{% else %}
{% include 'user_sidebar.html'%}
{% endif %}
</code>
{% if admin %}
{% include 'admin_sidebar.html'%}
{% else %}
{% include 'user_sidebar.html'%}
{% endif %}
Then in the python:
<code>return render(request, 'template.html', {'admin': True})
</code>
<code>return render(request, 'template.html', {'admin': True})
</code>
return render(request, 'template.html', {'admin': True})