我是rails的新手,我正在阅读http://guides.rubyonrails.org/getting_started.html。有一个例子可以存储,编辑和删除数据,但任何用户都可以存储,编辑和删除。我希望存储特定于每个用户的数据,他们应该只看到他们的数据,而不是其他人。我想要一个登录过程,用户应登录并存储他/她自己的数据,并能够修改或删除。
另外,我希望这是一个api,以便它可以被应用程序使用。我怎样才能做到这一点?有没有例子?
答案 0 :(得分:0)
这是你要求的很多东西。这里有太多详细解释,所以我会指出你正确的方向。我将假设您可以按照链接进行操作,并自行阅读文档。有关Ruby on Rails的更多详细信息,请阅读Ruby on Rails Guides。
您想要的一些功能可由现有的Ruby Gems处理:
要处理用户登录和注册(身份验证),建议将Devise作为当前最积极维护的gem。
要处理用户权限和权限(授权),您可以使用CanCan。
要在使用CanCan时描述权限,请在Ability
模型中说明:
def initialize(user)
can :manage, Data, :owner_id => user.id
end
可以在CanCan wiki找到更多信息。您需要在每个owner_id
模型中添加Data
列。这应该很简单,只需在Data
模型上定义一个关联。
class Data < ActiveRecord::Base
belongs_to :owner, :class_name => :User
end