問題タブ [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.
ruby-on-rails - カスタムattr_accessorの未定義のメソッド`validates_presence_of'を取得する
これがカスタムモデルであるという事実から問題が発生していると思います。
エラー:
私のモデル:
Railsの検証を取得するために、含めるまたは拡張する必要があるものがある可能性がありますか?プロジェクトはRailsプロジェクト内にありますが、私はモデルを手作業で作成しました。
何か案は?
ruby-on-rails - ActiveModelを使用したRailsの検証
ActiveRecord
で検証を機能させるためのドキュメントを調べてきましたActiveModel
。何らかの理由で、検証結果が返されません。
ActiveRecord
Railsの背後にあるカスタムAPIを介してインターフェースするのではなく、インターフェースする一連のモデルがあります。
モデル:
コントローラー:
フォーム:
私はここにレイアウトされたコードに従っています:RailsActiveModel検証
@ apiObject.saveがfalseとして返されるため、メソッドは正しくフォームに戻りますが、検証応答は返されません。マークアップを確認しましたが、通常のRails検証結果が返されません。私は何が欠けていますか?
ruby-on-rails - Rails - 複数のクエリを持つ 1 つのクエリを作成する方法は?
ここに 3 つのモデルがあります。
- プロジェクト
- スレッド (project_id)
- thread_participations (thread_id、ブール値を読み取る)
現在、ユーザーのプロジェクトのリストがあり、リストには、プロジェクトごとに未読のスレッドがいくつあるかが示されています。ここでの大きな問題は、ユーザーが複数のプロジェクトを持っている場合 (すべてのユーザーがそうです)、プロジェクトごとに 1 つずつ、複数のクエリで DB がヒットすることです。
Rails を使用して、1 つの DB ヒットでユーザーのプロジェクトごとに未読数を返すクエリを作成したいと考えています。
ビューで今日使用するものは次のとおりです。
そしてスレッドモデルで:
これを行う方法に関する提案はありますか?また、これはどのモデルに住むべきですか?プロジェクトまたはスレッド固有ではないため、おそらくユーザーのモデルですか?
ありがとう
ruby-on-rails - [1, 1] [2, 3], [5,1] を返すクエリが与えられた場合、その結果をどのように使用しますか?
与えられた:
どの出力:
その結果を使用してリストを更新するにはどうすればよいですか。結果セット 1 と 3 で指定されているのは project_ids です。その結果を繰り返し処理して、次のようなリストを更新するにはどうすればよいですか。
ありがとう
ruby-on-rails - User_ids の Field を持つテーブルを作成し、特定の User_Id を照会します
テーブルを作成し、Rails 3 でそのテーブルからデータを取得するのに助けが必要です。
内訳は次のとおりです。
モデル - ここに含まれる 3 つのモデルは次のとおりです。
- スレッドには多くの参加者がいます
- 参加者の所属スレッド
- ユーザー
活動表:
レコードの例は次のようになります。
参加者は user_ids のリストです。user_ids を保存するより良い方法があれば教えてください。私はまだこれを構築していません。
アクティビティ テーブルにデータを入力した後。次に、次の行に沿ってクエリを実行できるようにしたいと考えています。
上記が明確であることを願っています。そうでない場合はお知らせください。アイデア?考え?提案。
ありがとう
ruby-on-rails - after_save でレコードが作成または更新されたかどうかを判断する方法
#new_record? 関数は、レコードが保存されているかどうかを判断します。after_save
しかし、フックでは常に falseです。レコードが新しく作成されたレコードか更新による古いレコードかを判断する方法はありますか?
before_create
モデルにフラグを設定したり、データベースに別のクエリを要求したりするなど、別のコールバックを使用しないことを望んでいます。
アドバイスをいただければ幸いです。
編集:after_save
フックでそれを決定する必要があり、私の特定のユースケースでは、updated_at
またはupdated_on
タイムスタンプはありません
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。
私はこれを試しましたが、何もしていません:
考え?ありがとう
ruby-on-rails - データベースなしでRailsを使用するには、database.ymlに何を含める必要がありますか?
私はデータベースなしでrails3を使用していて、rakeテストに合格するためにdatabase.ymlに何を含めるべきか疑問に思っています。今は失敗します。ファイルにはまだ何も指定していません。私のモデルはActiveModelを使用します。
レーキテストの実行:
ruby-on-rails - 名前空間を使用してRubyonRails3でActiveModelを構築する際の問題
私はRubyonRails 3を使用しており、この方法でActiveModelを構築しようとしています。
私のコントローラーでこれを作るなら
このエラーが発生します:
私が作るなら
のデバッグ@new_account
は
エラーはどこにあり、どうすれば解決できますか?
PS:別の検証プロセスが必要なため、使用したくありませんvalidate_presence_of
が、その方法も機能しないと思います。
この方法を使用するvalidate!
と、それを参照する次のエラーが発生します
ruby-on-rails - 「ActiveModel::Errors」モジュールを使用してクラスにエラーを追加する方法
私は Ruby on Rails 3 を使用しており、「Rails の方法で」エラーを処理するためにクラス Account を拡張しようとしています。
私のモデルでは
上記のクラスで、次のハッシュを使用して「カプセル化」したいと思いますActiveModel::Errors
このように、上記のエラーハッシュをクラスに挿入した後、私ができるように
クラスにエラーを追加する方法がわからないため、テストシナリオのデバッグは(常に)次のとおりです。
どうやってやるの?