как я могу создать API для перечисления всех категорий ресторана, а затем еще один API для перечисления всех блюд определенной категории
- это views.py**
##MealCategory в ресторане @login_required(login_url='/restaurant/sign-in/') def restaurant_meal(request): foods = Meal.objects.filter(restaurant = request.user.restaurant).order_by ("- id") # (возникла проблема: я хочу связать это с HTML-кодом моей еды)
return render(request, 'restaurant/meal.html', {"meals": meals})
@login_required(login_url='/restaurant/sign-in/') def restaurant_add_meal (запрос):form = MealForm ()
if request.method == "POST":
form = MealForm(request.POST, request.FILES)
if form.is_valid():
meal = form.save(commit=False)
meal.restaurant = request.user.restaurant
meal.save()
return redirect(restaurant_meal)
return render(request, 'restaurant/add_meal.html', {
"form": form
- это моя model.py
раздел категории
class MealCategory(models.Model): Restaurant = models.ForeignKey(Restaurant, on_delete=models.CASCADE, related_name='restaurant') name = models.CharField(max_length = 500) description = models.CharField(max_length = 500) logo = models.ImageField(upload_to = ' restaurnt_logos/', blank = True) #blank означает, что не требуется
def __str__(self):
return self.name
class Meal(models.Model): category = models.ForeignKey(MealCategory, on_delete=models.CASCADE, related_name='restaurent') name = models.CharField(max_length=500) short_description = models.CharField(max_length=500) image = models.ImageField(upload_to='food_images/', blank=False) price = models.IntegerField(по умолчанию =0)
def __str__(self):
return self.name
это мой form.py class MealForm (forms.ModelForm): class Meta: model = MealCategory model = Mealexclude = ("restaurant",)