В приложении, над которым я работаю, есть меню выбора, в котором есть такие опции, как Ожидание, Актив, Неактивно. Я хотел бы разрешить пользователям создавать свои собственные настраиваемые опции для включения в эти меню. Им должно быть разрешено добавлять изменения и удалять свои собственные настраиваемые параметры, но не системные значения по умолчанию. Какая была бы нормальная нормализованная схема mysql для этого?Позвольте пользователям создавать свои собственные параметры меню выбора, сохраняя при этом приложения по умолчанию
ответ
Посмотрите на эту post и особенно на этом ресурсе: http://www.billsternberger.net/jquery/dynamically-add-dropdownlist-option-using-jquery/
Это очень просто и делает то, что вы хотите (для удаления, за исключением, но это не должно быть трудно реализовать :))
что касается структуры таблицы, я предполагаю, чтобы иметь таблицу для отдельных записей, которые могут иметь следующие поля:
select_id (int 11), value (varchar 255), added_by_user (int 1)
где added_by_user
не определяет пользователь, но говорят, если она была добавлена а.е. многосерийный телефильм И в таблице users вы можете добавить поле select_id
в качестве внешнего ключа. Теперь вы можете сказать, была ли добавлена запись пользователем, и если да, то каким пользователем.
Это довольно просто, но, как я уже сказал, это всего лишь один из способов сделать это (и то, как я это делаю :)), и вы получите эту идею.
// EDIT:
Если вы хотите, чтобы пользователь мог иметь более чем одну запись, таблица записей должны, конечно, содержать users_id
в качестве внешнего ключа (а не наоборот, как это в случае выше):
select_id (int 11), value (varchar 255), added_by_user (int 1), user_id (int 11)
в зависимости от того, как user_id
s обрабатываются (например, пользователь с ID = 0 является администратором или что-то) added_by_user
поле может быть устаревшим здесь.
- 1. Разрешить пользователям создавать свои собственные страницы
- 2. Позвольте избранным пользователям закрыть свои собственные аудиты в фабрикаторе
- 3. Позвольте пользователям MySQL создавать базы данных, но разрешить доступ только свои собственные базы данных
- 4. Лучший подход, позволяющий пользователям создавать свои собственные поля
- 5. Разрешить пользователям создавать свои собственные атрибуты в шаблонизированной модели
- 6. Как разрешить пользователям создавать свои собственные плоские страницы в Django?
- 7. Позвольте пользователям добавлять свои маркеры на Mapbox
- 8. Развернуть JMenu влево, сохраняя при этом выравнивание текста по умолчанию
- 9. Позвольте пользователям настроить интерфейс приложения (шрифт, цвет ...)?
- 10. Django-лихой создавать свои собственные виджеты
- 11. позволяют пользователям изменять свои собственные данные
- 12. Как разрешить пользователям удалять свои собственные комментарии?
- 13. Rails redirect_to по протоколу HTTPS, сохраняя при этом все параметры
- 14. jQuery прикованные варианты выбора перезаписывать параметры по умолчанию при загрузке
- 15. Как разрешить конечным пользователям создавать собственные функции?
- 16. Изменения UINavigationBar типа шрифта, сохраняя при этом по умолчанию размера
- 17. Самый простой способ разрешить пользователям создавать свои собственные формы в моем веб-приложении?
- 18. Изменение класса объекта, сохраняя при этом свои свойства и функции
- 19. Как отправить свои собственные параметры AddHandler
- 20. Позволяет конечным пользователям создавать свои собственные пользовательские запросы динамически с помощью asp.net
- 21. Как мы разрешим пользователям создавать свои собственные поля для форм в Django?
- 22. Позвольте пользователям создать мероприятие/форум
- 23. Использование C#, чтобы позволить пользователям создавать собственные методы
- 24. Есть ли инструмент отчетов, который позволяет пользователям создавать свои собственные отчеты?
- 25. Позвольте пользователям создать несколько плейлистов на веб-сайте Drupal
- 26. Позвольте пользователям удалить свой собственный комментарий PHP
- 27. Запретить пользователям создавать таблицы в табличном пространстве по умолчанию
- 28. Позвольте пользователям создавать пользовательские макеты или хранить их в базе данных
- 29. Как люди собираются создавать свои собственные языки программирования?
- 30. Как разрешить пользователям удалять свои собственные комментарии, а не другие
Привет, да jquery, чтобы добавить к выбору довольно легко. В примерах ваших таблиц. Что произойдет, если пользователь добавит несколько записей. В таблице пользователя, как он будет хранить несколько fk's select_ids? Было бы лучше в поле added_by_user сохранить идентификатор пользователя? Итак, когда мы запрашиваем эту таблицу, показываем системные значения по умолчанию плюс любое, где added_by_user равно текущему идентификатору пользователя? – Anagio
Да, вы абсолютно правы! В вашем случае вы должны сохранить 'users_id' в качестве внешнего ключа в таблице записей! Я уточню свой ответ. – Quasdunk
@Anagio И, кстати, jQuery/JavaScript не нужен, если вы не хотите его использовать, это просто заставляет его выглядеть немного лучше. Но он также отлично работает. – Quasdunk