gpt4 book ai didi

ruby-on-rails - 如何跟踪多次调用以呈现 :partial 的信息

转载 作者:太空宇宙 更新时间:2023-11-03 16:40:14 25 4
gpt4 key购买 nike

我正在使用 attribute_fu 为特定表格呈现一个漂亮的行 block 。

<%= f.render_associated_form(@foo.bars, :new => 5) %>

我想让 bar 部分有一些状态的概念。 (因为这个概念是特定于 View 的,我不想将它外化到 Bar 模型本身并在 Controller 中计算它。)为了简单起见,假设它是 的索引>bar@foo.bars 列表中。

(我知道如果是这种情况,我可以使用 :collection => @foo.bars 来启用 bar_counter ......这在我的测试中似乎不起作用,但我已经看过它的文档。)

我的问题——如何将变量传递到局部变量以便我可以保留和编辑状态?天真地,我假设做类似的事情

<% @tmp = {:index => 1} %>
%= f.render_associated_form(@foo.bars, :new => 5, :locals => {:tmp => @tmp}) %>

#goes in the view
<%= tmp[:index] += 1 %>

会起作用。 tmp 被适本地传递但是调用 [] 抛出“呃哦,你刚刚调用了一个方法 nil”。令我惊讶的是,我可以执行 tmp.inspect、tmp.class 等来查看哈希,这些结果是我期望的。但是 tmp[:index] 或 tmp[:anything_I_want] 会导致它爆炸。

tmp 设为数组也有类似的结果。

有什么想法吗?

最佳答案

我最终以彻底的 Rails 方式解决了这个问题——修补 :attribute_fu 以满足我的需要。希望我能尽快向社区发布我的补丁。

关于ruby-on-rails - 如何跟踪多次调用以呈现 :partial 的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/264832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com