Хобрук: Ваш путь к мастерству в программировании

У пользователя Rails Devise есть несколько действий

Предисловие: Новичок в Rails и начинающий программист, будьте осторожны ;)

Мой вопрос настолько широк, что я не могу отточить здесь стратегию, поэтому, возможно, кто-то из вас может помочь. Я могу настроить аутентификацию пользователя без проблем, использовал Devise - был удивлен, насколько это просто.

Моя проблема в том, что мне нужно понять основную стратегию для этого: я хочу иметь этих Пользователей, которые могут выполнять два основных действия. 1) Сделать запрос. 2) Выполнить запрос.

Таким образом, концептуально пользователь может быть как «заявителем», так и «исполнителем запросов» в любое время.

Я начал настраивать это и на полпути понял, что мне нужно замедлиться и спланировать, но я застрял, задаваясь вопросом, как лучше всего это сделать. «Выполнение» должно быть связано с конкретным «запросом» от конкретного «пользователя».

Если кто-то может просто указать мне правильное направление, даже какую-то документацию, связанную с такими вещами, я был бы очень признателен.

Я знаком с концепцией модели, которая имеет_многие и принадлежит_к, и предполагаю, что это будет частью решения, но не знаю, как действовать дальше.

Спасибо


  • просто некоторое уточнение: я думаю, что мне действительно нужно здесь выяснить, нужны ли мне 3 модели (пользователь, запрос, выполнение) или только пользователь и запрос, и должен ли запрос быть выполнимым? 13.02.2011
  • Если некоторые из пользователей будут публиковать запросы, а другой набор, который может пересекаться с «постерами», будет выполнять запрос, вам нужно будет применить роли к своим пользователям. Например, «заказчик» и «исполнитель». Если вы хотите пройти путь ролей, то ваш ответ здесь tonyamoyal.com/2010/07/28/. В противном случае, если вам не нужны роли, я думаю, что ответ - иметь 3 модели, как вы предложили. 13.02.2011
  • я не знал о концепции ролей, спасибо за ссылку, перевариваю ее прямо сейчас - еще не уверен на 100%, являются ли роли ответом или нет, но пока выглядит многообещающе, спасибо, приятель 13.02.2011

Ответы:


1

Devise управляет вашей аутентификацией, теперь вам нужно управлять авторизацией с помощью ролей — взгляните на CanCan https://github.com/ryanb/cancan и https://github.com/plataformatec/devise/wiki/How-To:-Integrate-with-CanCan-for-roles-management для инструкций по интеграции

13.02.2011
Новые материалы

Как свинг-трейдеры могут использовать ИИ для больших выигрышей
По мере того как все больше и больше профессиональных трейдеров и активных розничных трейдеров узнают о возможностях, которые предоставляет искусственный интеллект и машинное обучение для улучшения..

Как построить любой стол
Я разработчик программного обеспечения. Я люблю делать вещи и всегда любил. Для меня программирование всегда было способом создавать вещи, используя только компьютер и мое воображение...

Обзор: Машинное обучение: классификация
Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

Разработка расширений Qlik Sense с qExt
Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..

React Hooks: основы деструктуризации массива
Kent C. Dodds написал классный пост о том, как грядущая функция React под названием Hooks работает на капоте. Предстоящий хук React useState основан на деструктурировании массива, давайте..

Пакеты R, используемые в Tesla
Добро пожаловать обратно! R — очень популярный язык программирования, используемый множеством компаний, включая Tesla! Итак, давайте взглянем на некоторые пакеты R, которые использует Tesla...

Сокращение и слияние токенов для эффективных моделей VL: обзор
Часто в задачах, связанных с компьютерным зрением и НЛП, вычислительно затратная и требующая большого объема памяти обработка становится препятствием для более быстрого логического вывода модели, а..