我已经按照本教程(http://railscasts.com/episodes/236-omniauth-part-2)使用OmniAuth和Devise创建facebook登录,我收到此错误:在我的路由中自动加载常量用户时检测到循环依赖性. RB
devise_for :users , :controllers => {:registrations => 'registrations'}
Run Code Online (Sandbox Code Playgroud)
registrations_controller.rb
Class RegistrationsController < Devise::RegistrationsController
def create
super
session[:omniauth] = nil unless @user.new_record?
end
private
def build_resource(*args)
super
if session["devise.omniauth"]
@user.apply_omniauth(session["devise.omniauth"])
session["devise.omniauth"] = nil
end
end
end
Run Code Online (Sandbox Code Playgroud)
这是来自AuthenticationsController的我的创建方法
def create
omniauth = request.env["omniauth.auth"]
authentication = Authentication.find_by_provider_and_uid(omniauth['provider'], omniauth['uid'])
if authentication
flash[:notice] = "Signed in successfully."
sign_in_and_redirect(:user, authentication.user)
elsif current_user
current_user.authentications.create!(:provider => omniauth['provider'], :uid => omniauth['uid'])
flash[:notice] = "Authentication successful."
redirect_to authentications_url
else
user = User.new
user.apply_omniauth(omniauth)
if user.save
flash[:notice] …Run Code Online (Sandbox Code Playgroud) 我正在使用RailsAdmin,我正在尝试在管理面板中添加指向存储在AWS上的视频的链接.
field :license do
formatted_value do
link_to 'license', value
end
end
field :insurance do
formatted_value do
link_to 'insurance', value
end
end
field :registration do
formatted_value do
link_to 'registration', value
end
end
field :interview do
pretty_value do
link_to 'Download video', value.url
end
end
Run Code Online (Sandbox Code Playgroud)
这是我正在尝试配置的部分的rails_admin.rb(配置文件).前3个字段有效,但在INTERVIEW字段中我得到了
undefined method `link_to' for #<RailsAdmin::Config::Fields::Types::String:0xc83a7f0>
Run Code Online (Sandbox Code Playgroud)
您有什么建议可以在该领域获得链接吗?
谢谢!