Добавьте имя пользователя или любое поле, связанное с аутентификацией пользователя, например имя, фамилию и т. Д. c, в модельные формы - PullRequest
0 голосов
/ 27 мая 2020

Я создаю проект в django, в котором у меня есть два пользователя diff, то есть клиенты и рестораны. Я создаю модель для меню, в которую я хочу добавить, чтобы добавить название ресторана непосредственно в модели (имя пользователя в данном случае) вместо того, чтобы каждый раз вводить подробные формы. Кроме того, если возможно, если можно взять имя из другого поля, подобного этому, которое является частью системы входа?

Models.py

class menu_details(models.Model):
    restaurant_name = models.CharField(blank=True, max_length=20)
    dish_name = models.CharField(blank=True, max_length=20)
    dish_type = models.CharField(max_length=10, choices=food_type, default='veg')
    price = models.CharField(blank=True, max_length=20)
    description = models.TextField(blank=True, max_length=5000)
    image = models.ImageField0(blank=True)

    class Meta:
        db_table = "menu_details"

1 Ответ

2 голосов
/ 27 мая 2020

Если я хорошо понимаю, что вы хотите, я думаю, вам нужно поле внешнего ключа, указывающее на информацию о пользователе.

field_name= models.ForeignKey(User, help_text="", blank=True, null=True, on_delete=models.CASCADE)

Тогда вы можете получить доступ ко всем данным из экземпляра пользователя в представлениях, например :

this_menu = menu_details.objects.get(pk=1)

restaurant_name = this_menu.field_name.first_name
restaurant_email = this_menu.field_name.email

Или в шаблонах:

{{ this_menu.field_name.first_name }}
{{ this_menu.field_name.email}}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...