Ruby on rails Rails从操作返回一个对象

Ruby on rails Rails从操作返回一个对象,ruby-on-rails,Ruby On Rails,我想从ApplicationHelper中的rails方法返回一个对象(@state)以及true或false class User include ApplicationHelper *****-----_******** def user_state user = self state = get_state(user) end end 我有一个名为User的模型,它调用applicationhelper中的一个动作 class User include Appl

我想从ApplicationHelper中的rails方法返回一个对象(@state)以及true或false

class User
include ApplicationHelper

*****-----_********

  def user_state
   user = self
   state = get_state(user)
  end

end
我有一个名为User的模型,它调用applicationhelper中的一个动作

class User
include ApplicationHelper

*****-----_********

  def user_state
   user = self
   state = get_state(user)
  end

end
在应用程序助手中

def get_state (user)
 @user = User.find(user.id)
 @state = UserState.where('user_id = ?',@user.id)
 if @state.present?
  *** here I want to return @state along with true **** 
  return true 
 else
  return false
 end
end
我试过“return@state和true”不起作用,但“return@state”起作用了

在我看来,对象或布尔值都可以返回,而不是同时返回

有没有办法把他们两个都还回去。提前谢谢。

我不确定这里需要的是“助手”,但从ruby方法返回多个值非常简单:

def myfun(x)
  if x
    [true, "one"] # or use return true, "one"
  else
    false
  end
end

a, b = myfun(true)
p a, b # prints true, "one"

a, b = myfun(false)
p a, b # prints  false, nil