2010-01-05 2 views
0

Эй, ребята, я делаю персональный сайт с блогом. Я бы хотел, чтобы некоторые записи были защищены паролем, как я видел, по крайней мере, на одном Wordpress. Это не biggie. Но мне было интересно, есть ли что-то действительно гибкое, что позволит скрывать текст после публикации? Например, общественный пост может сказать: «Я встретил своего друга Боба на кофе сегодня», но, положив личный пароль, какой-то текст, помеченный как закрытый, будет выглядеть следующим образом: «Боб воняет!» Кроме того, мне понадобятся разные уровни конфиденциальности для друзей, членов семьи и т. Д. Не уверен, как связать все это вместе, но я даже не знаю много о мире блога в Ruby - есть ли что-то достаточно расширяемое, чтобы я мог соединить эти функции самостоятельно, не изобретая велосипед? Канкан библиотекауниверсальный блог для рубинов на рельсах, защита паролем?

ответ

1

Существует несколько плагинов авторизации для Rails, у которых есть помощники вида, которые отображают только эту разметку, когда пользователь имеет соответствующий доступ. Таким образом, член семьи мог видеть, что Боб воняет !, но гость будет видеть только публичный пост. Вероятно, Javascript может быть излишним, если вы не хотите показывать скрытые данные, не обновляя страницу.

acl_system2 имеет метод ограничения_to. CanCan имеет возможность? просмотреть вспомогательный метод. Here - это некоторые другие графы/плагины авторизации.

0

Ryan Bates' должен быть гибким решением разрешение, которое может быть хорошим подспорьем для вас с реализацией различных слоев приватности: http://github.com/ryanb/cancan

, связанные с реализацией как таковой - я думаю, это слишком общий вопрос для ответа на этот вопрос, и зависит от вас, как разработчика программного обеспечения, для принятия решения по этому подходу.

0

Мне не известны уже существующие библиотеки (если они вообще есть) для вышеупомянутых функций; но я чувствую, что с учетом вышеуказанного требования; сначала нужна структура разрешения; для управления разрешениями на уровне детализации.

Представление должно быть проще, с обратными вызовами, встроенными в поле зрения. (т. е. в HTML) с использованием JQuery (или любой другой структуры JS) и JSON. После успешной аутентификации пользователя вы можете выдать обратные вызовы для извлечения содержимого, которое будет показано с помощью json, и добавить его к отмеченным div. ИЛИ вы можете полностью загрузить «контролируемый» контент и показать его пользователю.

Смежные вопросы