Форум программистов, компьютерный форум, киберфорум
Python: Django
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 21.12.2015
Сообщений: 14

Передача экземпляра модели

13.01.2021, 18:03. Показов 1439. Ответов 1

Студворк — интернет-сервис помощи студентам
У меня есть две модели 1:М, товары и отзывы к ним. Хочу чтобы пользователь смог ввести свой отзыв к конкретному товару на странице product-detail
У меня есть:

models.py:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
class ReviewProduct(models.Model):
 
    RATE_CHOICES = []
    for r in range(0, 6):
        RATE_CHOICES.append((r,r))
 
    comment = models.TextField('Отзыв',max_length=1000, null=True, help_text="Введите отзыв")
    rate = models.IntegerField('Оценка', choices=RATE_CHOICES, null=True, help_text="Оцените товар")
    product = models.ForeignKey('Product', on_delete=models.SET_NULL, null=True)
 
 
class Product(models.Model):
    name = models.CharField(max_length=50)
    price = models.CharField(max_length=20)
views.py:

Python
1
2
3
4
5
6
7
8
def create(request):
    if request.method == "POST":
        tom = ReviewProduct()
        tom.comment = request.POST.get("comment")
        tom.rate =request.POST.get("rate")
        tom.product = request.POST.get("id")
        tom.save()
    return HttpResponseRedirect("/")

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
<form method="POST" action="create/">
    {% csrf_token %}
    <p>
        <label>Введите отзыв</label><br>
        <input type="text" name="comment"/>
    </p> 
    <p>
        <label>Введите оценку</label><br>
        <input type="number" name="rate" />
    </p>
     <p>
      <label>уже введено</label><br>
      <input type="text" name="id" value={{product.pk}}/>
     </p>
    <input type="submit" value="Сохранить" >
</form>
Выдает следующую ошибку:
Cannot assign "'1/'": "ReviewProduct.product" must be a "Product" instance.
Как мне передать в БД конкретный экземпляр продукта, на странице которого я нахожусь (желательно вообще поле с input type убрать)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.01.2021, 18:03
Ответы с готовыми решениями:

Вызов метода динамически созданного экземпляра модели
Здравствуйте! Имеется некоторое количество моделей. например public class Category : BaseModel { ...

Передача экземпляра класса в метод
Всем привет случайно столкнулся с данной проблемой. Есть простой класс public class Test { public int...

Передача экземпляра класса в параметр
как передать в метод (в качестве параметра) экземпляр класса, и как редактировать свойства этого экземпляра в методе? например есть...

1
 Аватар для m0nte-cr1st0
1043 / 578 / 242
Регистрация: 15.01.2019
Сообщений: 2,178
Записей в блоге: 1
13.01.2021, 20:54
tom.product = request.POST.get("id") -> Product.objects.get(pk=request.POST.get("id"))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.01.2021, 20:54
Помогаю со студенческими работами здесь

Передача экземпляра обьекта в функцию dllexport
Здравствуйте, столкнулся с такой проблемой. Вот рабочий код #include &lt;stdio.h&gt;; #include &lt;iostream&gt;; #using...

Передача экземпляра класса из формы в форму
Собственно, не уверен, что нужно именно то, что я написал в сабже. Ситуация такая: имеется form1 и form2, и некий класс Hero. В form1 я...

Передача экземпляра собственного класса в функцию
У меня есть класс MyClass с полями X, Y , Radius, Id. Еще в нем есть функция-член. Возможно ли с помощью языка F# передать параметром в эту...

Передача экрана экземпляра приложения по сети
Здравствуйте уважаемые специалисты. Не знаю, на какой форум обращаться, так как вопрос может и нестандартный. Вполне возможно,...

Классы, передача экземпляра класса в качестве параметра
Есть три класса: Фильм, Зал, Сессия. Сущность: Кинотеатр. У класса Фильм множество полей типа: Имя, Продолжительность и потенциально...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru