我有一个Facebook应用程序,并希望更改它的权限.这些在我创建应用程序时很容易设置,但是当我登录到应用程序并完成设置时,我找不到任何权限提及.我在哪里更新现有应用的权限?
我正在使用Rails 3和Devise进行用户身份验证.假设我有一个User模型,启用了Devise,还有一个Product模型,以及一个User has_many Products.
在我的Products控制器中,我希望我的find方法由current_user限定,即.
@product = current_user.products.find(params[:id])
除非用户是管理员用户,即current_user.admin?
现在,我几乎在所有方法中运行该代码,这看起来很混乱:
if current_user.admin?
@product = Product.find(params[:id])
else
@product = current_user.products.find(params[:id])
end
Run Code Online (Sandbox Code Playgroud)
这样做有更优雅/标准的方式吗?
我正在使用rails_admin,我想在一些输入中向我的admin部分添加一些自定义样式。有没有办法指定其他类别?
就像是:
configure :title, :string do
css_class 'my-class'
input_html {:class => 'my-class', :toolbar => 'my-toolbar'}
end
Run Code Online (Sandbox Code Playgroud)
我似乎找不到完整的可用选项列表。我知道我可以指定hidden,visible,ckeditor true,和一个或两个其他的东西。
我正在使用一些其他的自定义JS和CSS,但是我需要能够指定一些CSS类,以使所有内容都按我想要的方式工作。
具体来说,我使用的是CKEditor,并且希望使用多个工具栏,一个简单而一个高级。我已经可以很好地配置CKEditor,但是我找不到让Rails_admin使用备用工具栏的方法。
我在Rails应用程序中使用Devise和Rack :: SSLEnforcer.当用户收到确认电子邮件时,它看起来像:
http://mysite.com:443/users/confirmation?confirmation_token=123456789xxx
该链接由Devise的confirmation_url方法自动生成.
此链接不应附加端口443.从理论上讲,我不需要链接到https地址,但如果是的话就没问题了.至少应该是前面的https,而不是最后的443端口.
有任何想法吗?
我最近升级到Rails 3.1(从3.0),由于某种原因,我的一条路线不再有效.我有一个发布csv文件的表单,由一个项目控制器处理.路线看起来像:
resources :items do
member do
post 'receive'
post 'show'
end
collection do
post 'csv_import'
get 'transactions'
get 'template'
end
end
Run Code Online (Sandbox Code Playgroud)
这就是我在日志中看到的内容 - 看起来它正在发布正确的操作.
Started POST "/items/csv_import" for 127.0.0.1 at Tue May 08 11:09:52 -0400 2012
Processing by ItemsController#show as HTML
Run Code Online (Sandbox Code Playgroud)
但它正在由show动作处理:
ActiveRecord::RecordNotFound in ItemsController#show
Couldn't find Item with id=csv_import
Run Code Online (Sandbox Code Playgroud)
我不能为我的生活看到我在这里做错了什么.