Хранение порядка элементов HTML-списка в БД

Всем доброе утро!

Делаю сейчас HTML-страницу со списком элементов. Этот список загружается из базы данных MySQL, отрисовывается через шаблон, и потом его можно сортировать как душе угодно (с помощью JUI Sortable).

Возник вопрос: как лучше хранить данные о порядке элементов в БД? Сейчас в таблице с элементами 4 поля.
1. Стоит ли заводить дополнительное поле sort в таблице с элементами?
2. Или стоит сделать отдельную таблицу для хранения порядка элементов?

И дополнительный вопрос: как лучше записывать в БД новый порядок элементов?
1. Кэшировать данные на клиенте после перемещений и передавать на сервер после определённого таймаута (когда пользователь, например, уже N секунд ничего не сортировал в меню)?
2. Или можно сразу, если сортировки не так часто происходят?

Заранее спасибо всем, кто прочитал и откликнулся :)
  • Вопрос задан
  • 3029 просмотров
Решения вопроса 1
morozovdenis
@morozovdenis
если элементы принадлежат исключительно одному пользователю, то заводите поле дополнителное order
если один и тот же элемент может принадлежать рзным пользователям, то поле надо заводить в таблице которая делает связь many-to-many между пользователями и элементами

по второму вопросу
1. сохранять данные по таймауту после последнего действия - это хорошее решение. можно ещё смотреть что пользователь увёл курсор с этого элемента
2. сразу отправлять можно конечно, но не желательно
3. ещё есть старое доброе решение edit-save, не вебдванольненько, но зато надёжно )
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы