問題タブ [has-one]
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 - has_one 関係にスコープされた validates_uniqueness_of フィールド
私は次のモデルを持っています:
Section
モデル (call_number
は のフィールドSection
)で次のことを実行できるようにしたいと考えています。
がないため、これは明らかに機能しません。Section
では、スコープを関係のモデルに制限するにはどうすればよいですか?term_id
無駄なカスタムバリデーターを作成しようとしました( 「nil:NilClassの未定義メソッド「セクション」」というエラーSection
で新しいバリデーターを作成すると機能しません):Section
どうもありがとう!
ruby-on-rails - has_one :through => 複数
出席とバウチングの両方:
したがって: 出席と保証の間の 1 対 1 の関係。
あまり考えずにこれを行う方法はありますか?
注: 実際には、考えすぎてもかまいません。
ruby-on-rails - ActiveRecord 関係: A has_many Bs と A has_one B を同時に使用できますか?
Rails での処理方法がわからない状況があります。
イベントhas_many :photos
と写真belongs_to :event
十分に簡単
ただし、Event は 1 つの「キー」写真も参照する必要があります。
追加について考えました:
イベントhas_one :key_photo, :foreign_key => "photo_id"
しかし、これはhas_many
上記のように機能しますか? もしそうなら、すでに言っているPhotoモデルの逆をどのように処理するのPhoto belongs_to :event
ですか?
1 行 (「キー」写真) のみに当てはまるブール列を Photo に追加できますが、それは無駄のように思えます... 1 ビット列のみの場合。
ruby - ActiveRecord と has_one と has_many の使用
この単純なモデルを考えてみましょう。a にProject
は 1 つがProjectType
あり、当然多くProjects
のものがそのタイプになる可能性があります。
したがって、Project
has_one :project_type
(と呼ばれるtype
) とProjectType
has_many :projects
.
私の移行では、(この例では簡略化されています)
私のプロジェクトクラスは次のようになります (この例では再び簡略化されています)
そして、私の ProjectType は次のようになります
これが機能することを確認するための簡単な単体テストを作成しました
このテストは、アサートでエラーをスローします。
SQL は、テーブルにproject_id
フィールドがあると想定しているようですが、 aを many に関連付けることができる場合、それは意味がありません。私の問題は、as notを参照できるようにしたいということと関係があると思いますが、これをどのように修正するかわかりません。project_types
ProjectType
Projects
ProjectType
project.type
project.project_type
ruby-on-rails - Rails:親モデルのビューでhas_oneモデルを作成しますか?
キャラクターと背景の2つのモデルがあります。キャラクターhas_oneBackground、およびBackgroundbelongs_toCharacter。_menuの部分をキャラクタービューに表示するように設定して、ユーザーがアイテムや呪文など、キャラクターに関連する他のモデルを表示できるようにします。
ただし、Characterにはこれらの他のモデルとhas_manyの関係があり、has_oneの関係を持つモデルに正しくリンクする方法を理解するのに問題があります。
has_manyモデルの場合、キャラクタービューページから新しいページを追加する方法は次のとおりです。
メニュー部分のコードは次のとおりです。ページが作成されると、ページにリンクします。
そして私のBackgroundsコントローラーからのコード:
何かアドバイス?基本的に、link_toでキャラクター表示ページに新しい背景ページを作成し、作成後にその背景をメニュー部分に表示して、ユーザーがリンクをクリックしたときに表示および編集できるようにします。
私は次のようにコードを書いてみました:
しかし、Railsは.existsと文句を言いますか?未定義のメソッドです。.existsはhas_one関係では機能しないと思います。そうでない場合は、そもそも.existsを誤って使用しています。ご入力いただきありがとうございます。
cakephp - Cakephp で 2 つのモデルのデータを編集する
私は 2 つのモデルを持っています。1 つはLogin
で、もう 1 つは ですUserdetail
。リレーションシップLogin
を使用して、両方のモデルでモデルからデータを保存しました。hasone
それらを編集する方法を教えてください。
add.ctp
ファイルに保存するために次のコードを使用しました。
ruby-on-rails - Rails 3-has_oneモデル、関連付けられたレコードが特定の基準を満たすレコードを見つける方法
私はモデルの投稿を持っています:
私はモデルの場所を持っています:
指定された場所から50マイル以内にあるすべての投稿を検索する必要があります。例を探しましたが、必要なものが見つかりませんでした。私は2つの方法で問題を解決しようとしましたが、失敗しました。私はRailsの初心者であり、問題に数えられていません。has_oneモデルを使用している他の人にも役立つと思います。
私は試した:
posts_controller.rb
index.html.erb
エラーが発生しました:
PostsController#indexのNoMethodError予期していなかったときにnilオブジェクトがあります。配列のインスタンスを期待していたかもしれません。nilの評価中にエラーが発生しました。<<
何が悪いのか助けてください。たぶん、これには他の簡単な方法があります。
また、posts_controller.rbでこれを試しました:
この場合、SQLに問題がありました。
ruby-on-rails - has_one :ポリモーフィックを介して - 可能ですか?
アプリにモデルがあります:
クラス コメント < ActiveRecord::Base
終わり
class Project < ActiveRecord::Base
終わり
class Discussion < ActiveRecord::Base
終わり
class Ticket < ActiveRecord::Base
終わり
すべて正常に動作しますが、commentable、つまり comment.commentable.project を介してコメントからプロジェクトを取得するのはあまり便利ではない場合があります。Comment モデルで has_one プロジェクトを作成する方法はありますか?
ruby-on-rails - has_one 関係を実装できません
アカウントが 1 つの請求先住所を持つことができるアカウント管理システムを作成しようとしています。アカウントとアドレスに独自のコントローラーとモデルを持たせたい。管理者ユーザーが新しいアカウントを作成すると、このアカウントの新しい請求先住所を作成するためにリダイレクトされます。最初の部分は機能し、アカウントを作成できますが、2 つ目は account_id 属性をアドレス テーブルに保存するだけです。以下は私のコードです:
accounts_controller
アドレス_コントローラー
account_model
address_model
また、routes.rbファイルに以下を追加しました
最後に、以下は関連テーブルのスキーマです
(私はプログラミングとレールにまだ慣れていないので、関連すると思われる限り投稿しました。)
新しいアカウント ページを開いて新しいアドレス ページに移動したときのログを追加しました。
ruby-on-rails - Rails 3 : ActiveAdmin と has_one による一括割り当て
私は 2 つのモデルUser
とを持つ Rails アプリケーションを開発していますClient
。
User
devise に支えられ、認証を担当しhas_one
Client
、特定のユーザーのクライアントの詳細を保持します。Client
を作成するたびにモデルが作成されるようにするため、この関係は常に存在しますUser
。
私が使用している管理領域にはActiveAdmin
. User
ここで、管理インターフェイスから を作成しようとすると、次のようなフォームを使用します。
問題は、User
またはClient
が保存され、ページが検証エラーでリロードされることです。Rails コンソールを確認WARNING: Can't mass-assign protected attributes: client_attributes
しましたが、作成しようとするたびにメッセージが表示されますUser
。
この問題を調べたところ、一括割り当てを可能にするにattr_accessible
は、割り当てが許可されているフィールドごとに定義する必要があることがわかりました。そのため、上記の各フィールドのモデルにこのディレクティブを配置Client
すると、メッセージが表示され続け、モデルが適切に保存されなくなります。
誰もこれについて手がかりを持っていますか?