Ruby on rails flash.now和@instance_var之间的区别

Ruby on rails flash.now和@instance_var之间的区别,ruby-on-rails,Ruby On Rails,我想知道现在使用flash.now和简单地使用实例变量(例如@error\u message)有什么区别 另一个相关的注意事项是,当您有多台服务器在运行时,flash是如何工作的,并且随后的请求可能会由另一台服务器执行 我想知道使用flash.now和简单使用实例变量(例如@error\u message)有什么区别 实际上没有太大区别,因为两个值在请求完成后都消失了。我认为这样更方便,视图代码可以在一个地方检查错误消息,而不必同时检查flash和实例变量 另一方面,当您有多台服务器在运行时,闪

我想知道现在使用
flash.now
和简单地使用实例变量(例如
@error\u message
)有什么区别

另一个相关的注意事项是,当您有多台服务器在运行时,
flash
是如何工作的,并且随后的请求可能会由另一台服务器执行

我想知道使用flash.now和简单使用实例变量(例如@error\u message)有什么区别

实际上没有太大区别,因为两个值在请求完成后都消失了。我认为这样更方便,视图代码可以在一个地方检查错误消息,而不必同时检查
flash
和实例变量

另一方面,当您有多台服务器在运行时,闪存是如何工作的,因此有可能后续请求将由另一台服务器执行

flash
存在于会话中,该会话通常保存到数据库中。因此,如果您有多个Rails应用程序实例正在运行,并且它们使用相同的数据库,则它们可以共享对
flash
对象的访问权限。因此,如果服务器a向
flash
对象写入数据,而服务器B在下一个请求中读取数据,则根本不成问题