Rails предоставляя каждому пользователю собственную настраиваемую таблицу стилей
Это довольно простой вопрос.
У меня есть пользователи в моем приложении Rails3. Я хочу дать каждому пользователю возможность настроить свою таблицу стилей с помощью формы, чтобы они могли по существу иметь свои собственные темы.
Мне было интересно, как я могу добиться того, чтобы это произошло, и каков наилучший способ сделать это?
Нужно ли использовать LessCss и, если да, могу ли я передать переменные из контроллера в таблицу Lesscss?
1 ответ
Несмотря на то, что это звучит как ужасная идея, я думаю, что простой способ сделать это - добавить таблицу CSS и сопоставить ее пользователю с записью для каждого файла CSS. Когда создается новый пользователь, вы создаете новые записи для каждого файла, используя CSS по умолчанию.
Чтобы отредактировать, вы можете представить пользователю текст CSS на странице с примером мини-страницы, где они могли бы увидеть изменения в реальном времени. Затем вам нужно будет динамически загружать CSS, что может быть огромным ударом по вашей базе данных, поэтому вы захотите добавить немного памяти к вызову для получения CSS.
Опять же, на мой взгляд, это ужасная идея. Что происходит, когда пользователь портится, а затем не может использовать сайт, потому что он ставит какую-то плохую ценность? Они не могут изменить его обратно, потому что они ничего не видят, и что они делают? Они никогда не вернутся.
Вам было бы лучше просто позволить им выбирать из набора разрешенных тем. Но эй, это твой сайт, ты делаешь с ним, как хочешь.