0
    @id =params[:ad]
   @empreasset = params[:check_box_id]
    case params[:commit]
    when 'delete'
      @empreasset.each do |empreasset|
        @em = Empreasset.find(empreasset)
        @em.destroy
  end
  @size=@empreasset.size
  @message = "#{@size} Employee asset(s) deleted sucessfully"
  respond_to do |format|

      format.html {redirect_to :action => :index, :id => @empreasset.ad}
      format.json {head :no_content}

end

ここ(@ empreasset.ad = @ id)ロジックもformat.html {redirect_to:action =>:index、:id=>@id}にすることができます。これも問題ありません。しかし、エラーが発生します。コントローラーインデックスで、idの値を送信する必要があります。@ empreasset.adは、すべてのデータに対して同じ値を持っているため。@empreasset.adの値を1つ送信する必要があります。しかし、@ empreasset.adが配列に含まれているので、どうすればそれが可能になるのでしょうか。@ empreasset.adの値を1つだけ選択して、送信するにはどうすればよいですか。

リダイレクト:id => @ empreasset.ad?

4

2 に答える 2

1

@empreassetは配列ですよね?この配列の1つの値を送信するには、@ empreasset.first.adを使用します。これにより、配列の最初の要素のプロパティadが取得されます。

于 2012-11-09T11:13:08.753 に答える
0

もう1行書きます。empreasset = @ empreasset.first

それから

format.html {redirect_to:action =>:index、:id => empreasset.ad}

于 2012-11-09T11:21:41.563 に答える