問題タブ [activemodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3780 参照

ruby-on-rails - カスタムattr_accessorの未定義のメソッド`validates_presence_of'を取得する

これがカスタムモデルであるという事実から問題が発生していると思います。

エラー:

私のモデル:

Railsの検証を取得するために、含めるまたは拡張する必要があるものがある可能性がありますか?プロジェクトはRailsプロジェクト内にありますが、私はモデルを手作業で作成しました。

何か案は?

0 投票する
2 に答える
6595 参照

ruby-on-rails - ActiveModelを使用したRailsの検証

ActiveRecordで検証を機能させるためのドキュメントを調べてきましたActiveModel。何らかの理由で、検証結果が返されません。

ActiveRecordRailsの背後にあるカスタムAPIを介してインターフェースするのではなく、インターフェースする一連のモデルがあります。

モデル:

コントローラー:

フォーム:

私はここにレイアウトされたコードに従っています:RailsActiveModel検証

@ apiObject.saveがfalseとして返されるため、メソッドは正しくフォームに戻りますが、検証応答は返されません。マークアップを確認しましたが、通常のRails検証結果が返されません。私は何が欠けていますか?

0 投票する
1 に答える
325 参照

ruby-on-rails - Rails - 複数のクエリを持つ 1 つのクエリを作成する方法は?

ここに 3 つのモデルがあります。

  • プロジェクト
  • スレッド (project_id)
  • thread_participations (thread_id、ブール値を読み取る)

現在、ユーザーのプロジェクトのリストがあり、リストには、プロジェクトごとに未読のスレッドがいくつあるかが示されています。ここでの大きな問題は、ユーザーが複数のプロジェクトを持っている場合 (すべてのユーザーがそうです)、プロジェクトごとに 1 つずつ、複数のクエリで DB がヒットすることです。

Rails を使用して、1 つの DB ヒットでユーザーのプロジェクトごとに未読数を返すクエリを作成したいと考えています。

ビューで今日使用するものは次のとおりです。

そしてスレッドモデルで:

これを行う方法に関する提案はありますか?また、これはどのモデルに住むべきですか?プロジェクトまたはスレッド固有ではないため、おそらくユーザーのモデルですか?

ありがとう

0 投票する
2 に答える
82 参照

ruby-on-rails - [1, 1] [2, 3], [5,1] を返すクエリが与えられた場合、その結果をどのように使用しますか?

与えられた:

どの出力:

その結果を使用してリストを更新するにはどうすればよいですか。結果セット 1 と 3 で指定されているのは project_ids です。その結果を繰り返し処理して、次のようなリストを更新するにはどうすればよいですか。

ありがとう

0 投票する
1 に答える
251 参照

ruby-on-rails - User_ids の Field を持つテーブルを作成し、特定の User_Id を照会します

テーブルを作成し、Rails 3 でそのテーブルからデータを取得するのに助けが必要です。

内訳は次のとおりです。

モデル - ここに含まれる 3 つのモデルは次のとおりです。

  • スレッドには多くの参加者がいます
  • 参加者の所属スレッド
  • ユーザー

活動表:

レコードの例は次のようになります。

参加者は user_ids のリストです。user_ids を保存するより良い方法があれば教えてください。私はまだこれを構築していません。

アクティビティ テーブルにデータを入力した後。次に、次の行に沿ってクエリを実行できるようにしたいと考えています。

上記が明確であることを願っています。そうでない場合はお知らせください。アイデア?考え?提案。

ありがとう

0 投票する
8 に答える
63374 参照

ruby-on-rails - after_save でレコードが作成または更新されたかどうかを判断する方法

#new_record? 関数は、レコードが保存されているかどうかを判断します。after_saveしかし、フックでは常に falseです。レコードが新しく作成されたレコードか更新による古いレコードかを判断する方法はありますか?

before_createモデルにフラグを設定したり、データベースに別のクエリを要求したりするなど、別のコールバックを使用しないことを望んでいます。

アドバイスをいただければ幸いです。

編集:after_saveフックでそれを決定する必要があり、私の特定のユースケースでは、updated_atまたはupdated_onタイムスタンプはありません

0 投票する
3 に答える
4430 参照

ruby-on-rails - Rails - :dependent => :destroy の使用方法を理解するのに役立ちます

私は次のモデルを持っています:

それはうまくいっていますが、問題はこれです。ユーザーがプロジェクトから離れたり削除されたりした場合、そのプロジェクトのすべての ThreadParticipation を削除する必要があります。

たとえば、user(15) がパーミッション (user_id =>15、project_id => 3) を削除して project(3) を離れた場合、関連するすべての ThreadParticipation レコードを自動的に削除するレールが必要です (スレッドを介した ThreadParticipation は project_id に属します)。 3、および ThreadParticipation.user_id = 15。

私はこれを試しましたが、何もしていません:

考え?ありがとう

0 投票する
2 に答える
1850 参照

ruby-on-rails - データベースなしでRailsを使用するには、database.ymlに何を含める必要がありますか?

私はデータベースなしでrails3を使用していて、rakeテストに合格するためにdatabase.ymlに何を含めるべきか疑問に思っています。今は失敗します。ファイルにはまだ何も指定していません。私のモデルはActiveModelを使用します。

レーキテストの実行:

0 投票する
1 に答える
652 参照

ruby-on-rails - 名前空間を使用してRubyonRails3でActiveModelを構築する際の問題

私はRubyonRails 3を使用しており、この方法でActiveModelを構築しようとしています。

私のコントローラーでこれを作るなら

このエラーが発生します:

私が作るなら

のデバッグ@new_account

エラーはどこにあり、どうすれば解決できますか?


PS:別の検証プロセスが必要なため、使用したくありませんvalidate_presence_ofが、その方法も機能しないと思います。


この方法を使用するvalidate!と、それを参照する次のエラーが発生します

0 投票する
1 に答える
839 参照

ruby-on-rails - 「ActiveModel::Errors」モジュールを使用してクラスにエラーを追加する方法

私は Ruby on Rails 3 を使用しており、「Rails の方法で」エラーを処理するためにクラス Account を拡張しようとしています。

私のモデルでは

上記のクラスで、次のハッシュを使用して「カプセル化」したいと思いますActiveModel::Errors

このように、上記のエラーハッシュをクラスに挿入した後、私ができるように

クラスにエラーを追加する方法がわからないため、テストシナリオのデバッグは(常に)次のとおりです。

どうやってやるの?