无法在视图上访问法拉第参数
Can't access faraday params on views
我有一个 API 有一个数据库和另一个 rails 没有活动记录的应用程序,我也在使用 ActiveResource 来管理一些数据库查询
我的前端应用程序控制器是
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
skip_before_action :verify_authenticity_token
end
我有一个操作来验证从我的前端到 API
的用户
从前端我有这个方法
def create_session
conn = Faraday.new(:url => 'http://localhost:3001')
conn.post '/auth_user', { :email => params[:email], :password => params[:password] }
end
以及 API
def auth_user
user = User.find_by(email: params[:email])
if user && user.authenticate(params[:password])
conn = Faraday.new(:url => 'http://localhost:3000')
conn.post '/add_session', { :status => "right", :user => user.id }
else
conn = Faraday.new(:url => 'http://localhost:3000')
conn.post '/add_session', { :status => "wrong" }
end
结束
请注意,我可以访问 params[:email] 和 params[:password],并且我获得了前端的正确状态
然后在前端内部我无法访问 byebug 上的 params[:status] 或 params[:user] excpet
我尝试执行 session[:user_id] = params[:user] 但它不起作用
我在这里错过了什么?
经过谷歌搜索和尝试后,我发现我做错了。
因为动作已经执行并且它的所有变量都消失了-据我所知-所以我设法通过执行获得了这个信息:
conn.get '/auth_user'
然后我可以收到包含我需要的 json 信息的回复。
我有一个 API 有一个数据库和另一个 rails 没有活动记录的应用程序,我也在使用 ActiveResource 来管理一些数据库查询
我的前端应用程序控制器是
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
skip_before_action :verify_authenticity_token
end
我有一个操作来验证从我的前端到 API
的用户从前端我有这个方法
def create_session
conn = Faraday.new(:url => 'http://localhost:3001')
conn.post '/auth_user', { :email => params[:email], :password => params[:password] }
end
以及 API
def auth_user
user = User.find_by(email: params[:email])
if user && user.authenticate(params[:password])
conn = Faraday.new(:url => 'http://localhost:3000')
conn.post '/add_session', { :status => "right", :user => user.id }
else
conn = Faraday.new(:url => 'http://localhost:3000')
conn.post '/add_session', { :status => "wrong" }
end
结束
请注意,我可以访问 params[:email] 和 params[:password],并且我获得了前端的正确状态
然后在前端内部我无法访问 byebug 上的 params[:status] 或 params[:user] excpet 我尝试执行 session[:user_id] = params[:user] 但它不起作用
我在这里错过了什么?
经过谷歌搜索和尝试后,我发现我做错了。
因为动作已经执行并且它的所有变量都消失了-据我所知-所以我设法通过执行获得了这个信息:
conn.get '/auth_user'
然后我可以收到包含我需要的 json 信息的回复。