我正在使用Symfony2开发一个网站。每个用户都有一个个人资料页面,访问者可以查看。我希望用户可以更改一些样式,如背景,颜色,字体等 - 就像网站about.me这样做的方式。我的问题是如何做到这一点?
使用javascript和jquery即时更改背景图像等样式。但这些变化应该如何处理?我是否必须保存数据库中的更改?我应该创建自定义用户css文件吗?像about.me这样的页面如何做到这一点?还有什么我应该考虑的吗?
答案 0 :(得分:2)
要启动它:您必须提供一个控制面板,用户可以在其中设置各种字段,如
背景图片
字体家庭
无论
此值必须保存到数据库并以一对一的关系链接到用户,如
<entity name="My\MainBundle\Entity\User" table="user">
<one-to-one field="page_settings" target-entity="PublicPageSettings" inversed-by="user"/>
</entity>
<entity name="My\MainBundle\Entity\PublicPageSettings" table="page_settings">
<one-to-one field="user" target-entity="User" mapped-by="page_settings"/>
<field name="fontFamily" column="font_family" type="string"/>
</entity>
之后,您可以根据自定义设置呈现用户的公共页面。
答案 1 :(得分:0)
作为解决方案,您可以使用HTML5 localstorage功能。您可以在javascript中设置值,如: -
localStorage.bgcolor= "red";
localStorage.fontcolor = "white";
localStorage.font-family = "Verdana";
此值将在浏览器中保存一生。您可以在用户下次访问网页时检索这些值。