I'm trying to pass a value from a cookie from the controller into model
by using attr_accessor. But it doesn't work and I suspect I do something
wrong.
Is this on the right path?
class Test < ActiveRecord::Base
attr_accessor :key
.... key ..
end
class TestController < ApplicationController
def new
@test = Test.new
@test.key = cookies[:my_key]
end
end
You could alternatively say
@my_key = cookies[:my_key]
then access @my_key in the view. If the key is logically an attribute
of Test then use your method, if you are just putting it there in
order to pass it to the view then it may be more logical to use a
separate variable.
I'm trying to pass a value from a cookie from the controller into model
by using attr_accessor. But it doesn't work and I suspect I do something
wrong.
Is this on the right path?
class Test < ActiveRecord::Base
attr_accessor :key
.... key ..
end
class TestController < ApplicationController
def new
@test = Test.new
@test.key = cookies[:my_key]
end
end
It works. But how do I deal with a list as this? How do I set the
variable?
Is cookies[:my_key] just a single value? If so then do as I suggested
in my previous post
@my_key = cookies[:my_key]
and then it will be available in @my_key in the view.
I don't know what you are using the cookie for of course, but have you
considered using the session variable instead? That might be simpler
if it does what you need.
@my_key = cookies[:my_key]
then access @my_key in the view. If the key is logically an attribute
of Test then use your method, if you are just putting it there in
order to pass it to the view then it may be more logical to use a
separate variable.
Thanks but I don't need it in the view but in the model.