【发布时间】:2016-08-23 22:25:03
【问题描述】:
Rails 3.2
我正在使用 API gem。客户想要的是将他想要将可用于访问 API 的电子邮件地址列入白名单的表保留在一个单独的表中,他只能通过 phpmyadmin 访问。
这将是一个表:
api_users
单列:email(除了id、created_at、updated_at)
该表中的电子邮件地址也存在于 rails 应用程序的用户表中。
如果我创建一个模型:models/api_user.rb:
class ApiUser< ActiveRecord::Base
attr_accessible :email
并且,在我的模型/api_ability.rb 中,我添加了以下内容:
class ApiAbility
include CanCan::Ability
def initialize(user, params = {})
user ||= User.new
if ApiUser.find_by_email(user.email)
can :manage, :api
end
end
end
这行得通吗?
【问题讨论】:
标签: ruby-on-rails cancan