【问题标题】:Use a variable created in a loop in other files - Ruby on Rails在其他文件中使用在循环中创建的变量 - Ruby on Rails
【发布时间】:2023-03-22 22:25:01
【问题描述】:

我想知道如何使用在其他文件的循环中创建的变量。例如,我的视图中有这个循环:

<% for @p in @posts %>
    <%= @p.content %>
<% end %>

如何在我在控制器中创建的方法中使用@p?提前谢谢!

【问题讨论】:

  • 您的数据库中是否存在 p?您不能只引用关联的表和行 ID 并将其发送到您的控制器吗?当用户点击时,将关联的 ID 发送出去?当然,假设@p 是一个特定的帖子......

标签: ruby-on-rails ruby for-loop methods global-variables


【解决方案1】:

在循环中创建的变量在技术上是在块内创建的。在块中创建的变量可供该块访问。请阅读此https://www.sitepoint.com/understanding-scope-in-ruby/

我不知道为什么有人要使用在控制器的视图中创建的变量,它是相反的,你应该使用在视图中的控制器中创建的变量

由于您在问题中标记了全局变量,如果您仍然想使用它们,use $p instead of @p

【讨论】:

    猜你喜欢
    • 2014-08-24
    • 2013-12-21
    • 2011-04-03
    • 2012-01-09
    • 1970-01-01
    • 1970-01-01
    • 2010-11-26
    • 2012-03-27
    • 1970-01-01
    相关资源
    最近更新 更多