我希望设置自定义数据属性与内部通信-rails宝石。在UserController#sign_up中,我有intercom_custom_data.user[:sign_up] = true,但是没有创建变量。我尝试在其他控制器(TruckController#edit)中,如果它是创建的。
user_controller.rb
class UserController < ApplicationController
skip_before_filter :check_admin
skip_before_filter :authenticate_user!, except: [:recovery]
skip_before_filter :verify_authenticity_token
def sign_up
...
if user.save
puts current_user.inspect
# <User id: 11, username: "user", email: "user@email.com", encrypted_password: "aebvcbb5c..."
intercom_custom_data.user[:sign_up] = true
end
end
endtruck_controller.rb
TruckController < ApplicationController
def index
puts current_user.inspect
# <User id: 11, username: "user", email: "user@email.com", encrypted_password: "aebvcbb5c..."
intercom_custom_data.user[:sign_up] = true
end
end发布于 2016-03-03 07:33:41
我会在我的用户模型signed_up中添加一个字段,这样您就可以以任何想要的方式更改它。
现在,转到配置/初始化器中的intercom.rb配置文件,并将一个自定义数据字段添加到用户模型中:
IntercomRails.config do |config|
...
config.user.model = Proc.new { YourUserModelClass }
config.user.custom_data = {
:sign_up=> Proc.new { |user| user.signed_up }
}
...
end之后,您应该在对讲机中看到该字段。
https://stackoverflow.com/questions/34187932
复制相似问题