我想问一下在数据库中保存用户首选项和用户特定设置的正确方法是什么?我目前设置的是在我的用户表中我只是不断添加包含有问题数据的列。例如,配置文件是公共的还是私有的,或者用户是否可以向他们发送配置文件注释等。但这种方式似乎很混乱,桌子看起来很糟糕。令我困扰的是,这可能不是正确的做法,是吗?
答案 0 :(得分:1)
尝试制作设置表,然后选择“用户到设置”表。对于所有可能的设置,设置包含(例如)setting_id
和setting_name
,然后users to settings
将包含三个字段:user_id
,setting_id
和{{1} }。
https://en.wikipedia.org/wiki/Database_normalization
setting_value
SELECT * FROM settings JOIN users_to_settings WHERE users_to_settings.user_id = :user_id