1

我正在使用 RoR 3.2.9。感谢这里的帮助,我设法完成了一些事情!现在我正在尝试从视图中的 button_to 创建新记录:

<%= button_to "Do IT", :controller => :apos, 
                           :method => :match %>

控制器如下所示:

class AposController < ApplicationController

...

def new
-> standard
end

def create
-> standard
end

def match
    #@apo = Apo.new(:auftrnr => $aktuelleID, :artikelnummer => @artikel.artikelnummer, :beschreibung => @artikel.name, :menge => 0)
    #@apo = Apo.new(:auftrnr => 2)
    @user = User.new do |apo|
        apo.auftrnr = 1
        apo.artikelnummer = 1
    end
    @apo.save
  end
end

新纪录的创造奏效了。但奇怪的第一件事是,我收到了消息:

Apo 已成功创建。

...这是在控制器的创建方法中定义的(我没有调用它,是吗?)好吧,然后记录被创建为空,尽管我尝试用一​​些值创建它(尝试了 3 种可能性,你可以见上文,所以我认为这不是 ActiveRecord 语法错误)

*Apo 已成功创建。Auftragsnummer:15

扎隆萨:

银行交易:

利弗拉德雷斯:

开始购物

编辑 | 后退*

('15' 是这个类的 ID)

我期待这个新创建的记录中有一些内容:-(

我尝试在其他控制器中定义方法并获得相同的结果。知道我又做错了什么吗?

太棒了!

4

1 回答 1

0

改变

:controller => :apos, :method => :match

:controller => :apos, :action=> :match

并确保您保存实际记录 - 您当前@apo在构建记录时将变量保存为@user

于 2012-12-04T22:39:42.367 回答