1
多くのユーザーを持つ部門というモデルがあります。 departmentに関連付けられたユーザーが存在するかどうかを確認するbefore_destroyメソッドを作成しました。その場合は削除しないでください。Rails 3 - インデックスページの破壊エラーを表示します。
class Department < ActiveRecord::Base
before_destroy :without_users
has_many :users, :dependent => :destroy
def without_users
if self.users.size() > 0
self.errors.add :base, "The department cannot be deleted because it has users associated to it"
end
self.errors.blank?
end
end
私のインデックスビューには、部門を破壊するボタンがあります。
<%= link_to image_tag("remove.png", :border => 0, :title => 'Delete'), department, confirm: 'Are you sure that you want to delete?', method: :delete, :class=>"actions_table" %>
そして、私のコントローラでは、これは自分の行動を破壊である:
def destroy
@department = Department.find(params[:id])
@department.destroy
respond_to do |format|
format.html { redirect_to departments_url }
format.json { head :ok }
end
end
インデックスビューでエラーメッセージを表示するRailsの方法は何ですか?
ありがとうございます!
@ department.errorsのすべてのエラーを連結してフラッシュ変数で表示するにはどうすればよいですか? – Tony
Michael HartlのRoRチュートリアルでは、オブジェクトにエラーが発生したときに複数のエラーメッセージを表示するのに役立つ部分的な方法を説明しています。 [このセクションを確認して、助けてください](http://ruby.railstutorial.org/chapters/sign-up#sec:signup_error_messages)。 – Batkins
これはBatkinsのポストへの更新です。 URLは今http://ruby.railstutorial.org/chapters/sign-up#sec-signup_error_messagesです。 – user1470511