Прежде всего хочу по приветствовать создателей djbook.ru и активных пользователей сайта, и выразить им уважение за проделанную работу.
Благодаря вашему проекту я стал более-менее сносно создавать что-то на Django, много чего стал понимать, а что не понятно как-то гуглиться или додумывается само-собой, но все таки возникла ситуация в которой я никак не могу разобраться.
Собственно вопрос: как это работает, когда поле модели ссылается на свой же объект модели? Как передать значение в поле parent:
class Comments(models.Model):
text = models.CharField('Text', max_length=300)
parent = models.ForeignKey('self', blank=True, null=True, verbose_name='child))
template (все условно, это не рабочий код, я просто пытаюсь выяснить как это работает :):
{% for comment in comments %}
Выводим текст комментария:
{{ comment.text }}
и ниже форму для ответа на комментарий:
input type="hidden" name="parent" value="{{ comment.id }}"
input type="text"
input "Ответить"
{% endfor %}
Так, я предполагаю, я могу передать в обработчик "формы ответа на комментарий", id(pk) родительского комментария. Но это же не правильно, зачем тогда делать ForeignKey поле ссылающееся на само себя? Достаточно поля PositiveIntegerField и всё...
Научите пожалуйста как правильно пользоваться этим, как правильно вставить нужное значение в поле "parent" c ForeignKey('self')?
P.S. Markdown не корректно работает при отображении комментария
Updated 15 March 2016, 19:42 by Roman.