问题描述
我想在 Laravel 项目中实现管理面板设置(颜色、主题、字体、徽标...)。
我在我的项目中使用了 limitless bootstrap 管理面板,laravel Blade,没有使用 vue.js 或其他任何前端框架。
但问题是将这些数据放入 css 文件中,频繁获取这些数据....
我的问题
- 有没有更好的方法来实现这一点?
- 如果正确,我提到的问题如何处理?
解决方法
要跨设备或多个会话保留数据,您需要将它们存储为数据库值。我建议您将这些值保存在 SQL 数据库的 JSON 数据列中,映射到特定的用户 ID 左右。
当用户登录应用程序时,检查他在数据库中是否有自定义设置的记录。如果是这样,拉入该记录(JSON 数据)并将其存储在当前会话中。进一步在您的 HTML 文件中,使用会话存储中的值来更改样式或徽标或您希望更改的内容。这样你就可以将数据库查询限制在第一个登录请求。
另外要注意的是,如果用户在其活动会话期间更新了这些设置,您应该更新会话存储值。
注意:尚未实现相同的,只是一个对我来说听起来很理想的疯狂猜测。