Как получить url и передать его в качестве параметра url в django
я хочу передать url как параметр url например на моем сайте есть два отеля (отель A и отель B) на главной странице он показывает только две кнопки одна для доступа hotel A
и другая для hotel B
.
Я хочу получить первый url и передать его как параметр url, например
my-ip/hote-A
получить hotel-A
в url и передать его как параметр url
class Hotels(models.Model):
hotel_name = models.CharField(max_length=40,unique=True)
def __str__(self):
return self.hotel_name
def hotels(request):
hotel_lists= Restaurants.objects.all()
return render(request,'hotel/lists.html',{'lists':hotel_lists})
<div class="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-6 gap-3 pt-3">
{% for i in lists %}
<a href="{% url 'rooms:categories' i.hotel_name %}"><button class="text-pink-500 bg-transparent border border-solid border-pink-500 hover:bg-pink-500 hover:text-white active:bg-pink-600 font-bold uppercase px-8 py-3 rounded outline-none focus:outline-none mr-1 mb-1 ease-linear transition-all duration-150" type="button">
{{i.hotel_name }}
</button></a>
{% endfor %}
</div>
до сих пор все работает нормально, но когда мы выбираем, например, hotel A
, это приведет нас к приборной панели, с которой все должно быть связано hotel A
в моем main.html есть меню, все ссылки должны привести нас к тем данным, которые связаны с этим отелем
class Rooms(models.Model):
hotel= models.ForeignKey(Restaurants,on_delete=models.PROTECT)
room_number = models.IntegerField()
beds = models.IntegerField(default=2)
@login_required
def categories(request,hotel):
lists = Room.objects.filter(hotel__hotel_name=hotel).values('hotel__hotel_name', 'beds', 'balcon').annotate(total=Count('pk')).order_by('-total')
return render(request,'rooms/categories.html',{'lists':lists})
в моем файле main.html есть меню
<div class="z-50 h-screen overflow-y-scroll w-72 menunon header" id="menu">
<button class="absolute mr-4 text-white focus:outline-none left-4" onclick="changeMenu()">
<i class="text-2xl fas fa-bars"></i>
</button>
<div class="grid grid-cols-1 gap-5 mt-10">
<div class="border-b border-white">
<a onclick="showItemMenu('m0')" class="block p-2 text-center text-white transition duration-200 transform cursor-pointer hover:bg-white hover:text-indigo-800"><i class="fas fa-home"></i>{% trans "main" %}</a>
<div class="bgpurple menuitem" id="m0">
<a href="{% url 'rooms:hotels' %}" class="block p-2 text-center text-white transition duration-200 transform hover:bg-white hover:text-indigo-800"><i class="fas fa-home"></i>{% trans "hotels" %}</a>
<a href="{% url 'rooms:categories' hotel_name %}" class="block p-2 text-center text-white transition duration-200 transform hover:bg-white hover:text-indigo-800"><i class="fas fa-home"></i>{% trans "categories" %}</a>
<a href="{% url 'rooms:all_rooms' hotel_name %}" class="block p-2 text-center text-white transition duration-200 transform hover:bg-white hover:text-indigo-800"><i class="fas fa-list"></i>{% trans "all rooms" %}</a>
</div>
</div>
и это мой urls.py
path('<str:hotel>/categories',categories,name='categories'),
path('<str:hotel>/all-rooms',all_rooms,name='all_rooms'),
возможно ли это, пожалуйста? Спасибо большое