|
|
|
| Есть таблица comments:
id (int)
id_parrent (int)
post (int)
author (varchar)
text (varchar)
Если выводить комменты и их ответы в цикле, то выводятся они либо отсортированы по дате, либо по id, либо по id_parent. - все это не то (так нельзя ответить на ответ, после которого идет простой комментарий, т.к. он будет расположен уже в другом комментарии)
А как мне сделать, что бы они выводились как в дереве? Примерно ТАК.
Что бы они не были отсортированы по комментарий--ответ. | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 17:42)
| | читайте про организацию древовидных структур в базах данных
тем методом, которым Вы представляете деревья, организовать вывод за один запрос к БД, упорядоченный средствами самой БД, невозможно.
Либо nested sets
Либо сортировка на уровне приложения. | |
|
|
|
|
|
|
|
для: Trianon
(11.09.2010 в 18:21)
| | А если изменить структуру базы?
Возможно перед id_perent поставить поле для родительского комментария, а id_parent - будет дочерние комментарии. Или лучше по-другому? | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 18:30)
| | Adjacency lists
Nested sets
марш в гугл, а лучше в яндекс.
Впрочем, можете по этим ключам и здесь поискать - все равно выйдете одинаково. | |
|
|
|
|
|
|
|
для: Trianon
(11.09.2010 в 18:35)
| | А можно ли другим путем пойти? Создать связующую таблицу или еще что-то? А то почитав мануалы по тем 2-м вариантам понял, что нечего не понял. | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 22:10)
| | каким путем ни ходи - понять придется. | |
|
|
|
|
|
|
|
для: Trianon
(11.09.2010 в 22:14)
| | Вы можете кратко объяснить, как организовать таблицу, для древовидного вывода? А то я не понимаю. | |
|
|
|
|
|
|
|
для: lElectroHardl
(11.09.2010 в 22:22)
| | Могу.
Nested Sets. | |
|
|
|
|
|
|
|
для: Trianon
(11.09.2010 в 23:36)
| | А можно все же через id_parent? А то все другие навороты это для меня очень сложно.
Если делать структуру:
То нельзя добавить ответы к тем комментариям, после которых написан просто комментарий:
комментарий 1
--ответ 1
----ответ 2
------ответ 3
комментарий 2
--ответ 1
|
Т,е. на комментарий 1 ответ дать уже нельзя (или я глубоко ошибаюсь?)
Вот если можно было бы обойтись без Nested Sets, было просто замечательно! Возможна переструктурирование базы. | |
|
|
|
|
|
|
|
для: lElectroHardl
(12.09.2010 в 21:28)
| | Немного симпровизировав, решил задачу. | |
|
|
|