首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将变量从控制器传递到rails 4中的视图

将变量从控制器传递到rails 4中的视图
EN

Stack Overflow用户
提问于 2013-11-29 16:36:27
回答 2查看 1.2K关注 0票数 1

我希望将一个变量值从控制器传递到视图,如下所示

控制器(.rb)

代码语言:javascript
运行
复制
redirect_to root_url, :some_var => 'true or false'

视图(root_url.html.erb)

代码语言:javascript
运行
复制
<% if :some_var %>
   #do something
<% else %>
   #do something else.

有人能给我一个主意吗。提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-29 16:42:07

然后将该变量作为查询字符串传递即可。

代码语言:javascript
运行
复制
redirect_to root_url(foo: 'bar')

这会产生类似的url

代码语言:javascript
运行
复制
example.com?foo=bar

另一种方法是使用flash对象。

代码语言:javascript
运行
复制
redirect_to root_url, notice: "This is some info to convey"

Flash来传递临时变量:

代码语言:javascript
运行
复制
flash[:foo] = 'bar'
redirect_to root_url

# View
<% if flash[:foo] %>
  <%= "This is #{flash[:foo]} value" %>
票数 3
EN

Stack Overflow用户

发布于 2013-11-29 16:40:12

最好的方法是渲染,而不是重定向,因为你还没有完全完成整个动作。然后,只需在控制器操作中使用实例变量:

代码语言:javascript
运行
复制
@some_var = true or false
render root_url

根:

代码语言:javascript
运行
复制
if @some_var 
   do blah
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20290119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档