Ruby on rails 我可以使用Struct.new作为Rails模型吗?或者:如何创建匿名结构化非db支持的会话?
给出以下示例:Ruby on rails 我可以使用Struct.new作为Rails模型吗?或者:如何创建匿名结构化非db支持的会话?,ruby-on-rails,session,model,Ruby On Rails,Session,Model,给出以下示例: class AnonymousSession << Struct.new(:location, :preferences) def valid? ... end def new_record? ... end end 错误消息是关于“未知密钥”。有什么线索可以让它工作吗?我只需要没有数据库后端的匿名会话。由于寿命短,它们完全是一次性的 也许我的方法是错误的,而且已经有了一个使用匿名会话的优雅解决方案?我看过AuthLogic,但我发现
class AnonymousSession << Struct.new(:location, :preferences)
def valid?
...
end
def new_record?
...
end
end
错误消息是关于“未知密钥”。有什么线索可以让它工作吗?我只需要没有数据库后端的匿名会话。由于寿命短,它们完全是一次性的
也许我的方法是错误的,而且已经有了一个使用匿名会话的优雅解决方案?我看过AuthLogic,但我发现的任何示例都会附带ActiveRecord模型(并因此绑定到数据库)。我使用了解决方案,其中我的模型源自Tableless。我认为这在你的情况下也会起作用。你必须更多地解释你试图实现的目标。为什么不能在/app/models中创建一个匿名会话类
class AnonymousSession
attr_accessor :location, :preferences
def new_record?
# ...
end
def valid?
# ...
end
end
Ryan Bates有几集Railscast可能会帮到你:而且。这听起来是个不错的选择。“无表”解决方案非常适合我,因为它还提供免费验证。一个简单的类将需要太多的工作,所以这个解决方案不再是一个选项。不过还是要谢谢你。这听起来很有趣,但我仍然认为无桌建议更适合我的问题。用户会话由街道和房屋编号组成,通过将其与街道表、街道截面表和地理工具包查找进行比较来验证。这将用户连接到一个districts表,该表保存有关下一个废物收集日期等的数据。
class AnonymousSession
attr_accessor :location, :preferences
def new_record?
# ...
end
def valid?
# ...
end
end