Ruby on rails 向数组中添加对象?

Ruby on rails 向数组中添加对象?,ruby-on-rails,ruby,arrays,object,insert,Ruby On Rails,Ruby,Arrays,Object,Insert,我试图将一个对象插入数组,但它没有插入数组,而是在屏幕上打印内存地址 我的控制器中有以下代码: @article = Article.new("test","test1") @articles << @article #this line causes the prints @article=article.new(“测试”、“测试1”) @文章这可能是预期的行为。如果@articles确实是一个数组,那么它应该可以工作。只需检查追加后的数组,并确保新添加的元素在那里。如

我试图将一个对象插入数组,但它没有插入数组,而是在屏幕上打印内存地址

我的控制器中有以下代码:

@article = Article.new("test","test1")
@articles <<  @article     #this line causes the prints
@article=article.new(“测试”、“测试1”)

@文章这可能是预期的行为。如果
@articles
确实是一个数组,那么它应该可以工作。只需检查追加后的数组,并确保新添加的元素在那里。如果您是从控制台执行此操作,那么您看到的打印可能是控制台行为,而不是预期的行为。如果
@articles
确实是一个数组,那么它应该可以工作。只需检查追加后的数组,并确保新添加的元素在那里。如果您是从控制台执行此操作,那么您看到的打印可能是控制台行为,而不是
,您可以强制@articles成为如下数组:

@articles ||= []
<% @articles.each do |a| %> 
  <%= a.titulo + " / " + a.texto %>
<% end %>

然后像您已经在做的那样添加@article

您可以强制@articles成为如下数组:

@articles ||= []
<% @articles.each do |a| %> 
  <%= a.titulo + " / " + a.texto %>
<% end %>

然后像您已经在做的那样添加您的@文章

创建
@articles
作为
数组
,然后使用
@articles
作为
数组
添加到它之前,您的问题在于如何呈现
@articles

<%= @articles.each do |a| a.titulo + " / " + a.texto end %>

您的问题在于如何呈现
@文章

<%= @articles.each do |a| a.titulo + " / " + a.texto end %>

谢谢你的回答。我在网络上运行它,它会在网页上打印内存地址。你到底是如何将它打印到网页上的?我这样做是为了在视图中显示结果@Afaria-你应该将它添加到你的帖子中-你的问题在这里,而不是你认为它在哪里…我相信这是你的问题。您正在尝试将枚举数呈现给视图,而不是项目本身。您应该这样做:
谢谢您的回答。我在网络上运行它,它会在网页上打印内存地址。你到底是如何将它打印到网页上的?我这样做是为了在视图中显示结果@Afaria-你应该将它添加到你的帖子中-你的问题在这里,而不是你认为它在哪里…我相信这是你的问题。您正在尝试将枚举数呈现给视图,而不是项目本身。您应该这样做:
在控制器中使用
初始化
不是很习惯,我不建议这样做。相反,我建议使用私有方法:
def articles@条款| |=[];结束是的,
在控制器中初始化
会导致问题。不要这样做。在控制器中使用
初始化
不是很习惯,我不建议这样做。相反,我建议使用私有方法:
def articles@条款| |=[];结束是的,
在控制器中初始化
会导致问题。不要这样做。相反,在过滤器前使用
。好的呼叫。我的回答很好。编辑答案。