問題タブ [attr-accessible]
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_accessible、attr_accessor、彼らが何をするのか知りたい
私は、Rails とオブジェクト指向プログラミングの最初のステップを実行しています。私が理解したい非常に根本的なことがあります: なぜattr_accessible
モデル内で必要なのですか?
ハッカーが大量割り当てを使用してデータベース エントリを変更し、セキュリティを強化できることを読んだことがあります。そのため、機密フィールドを保護する必要があります (atribute_protected
この場合は使用)。
attr_accessible
の反対ですかatribute_protected
?もしそうなら、どのフィールドがアクセス可能で、どのフィールドがそうでないかを述べる必要があるのはなぜですか? これらのフィールドはデフォルトでアクセスできませんか? そして、何attr_accessor
のために使われますか?
一部のフィールドをアクセス可能にしないと、アプリケーションが実行されないことに気付きました。:password_digest や :admin などの機密フィールドに attr_acessible を使用できますか?
誰かが私にそれを説明できたら素晴らしいだろう.
万歳、TimmyOnRails
ruby-on-rails - attr_accessibleおよびサインアップフォームとの混同
私が取り組んでいるRailsプロジェクトの場合、ユーザーのモデルのほとんどの情報は、2要素認証の電話番号など、機密情報として扱われます。
email
モデルの基本、、、、password
およびをホワイトリストに登録しただけpassword_confirmation
です。
一括割り当てで設定できる属性が少ない場合に、この種のユーザーのサインアップフォームを設定する方法を理解しようとしています。通常のattr_accessible
プロパティのセットと、新しいユーザーインスタンスを作成するときにのみアクセスできる2番目のセットを指定する方法はありますか?
ruby-on-rails - 外部キーを attr_accessible に追加することによる「保護された属性を一括割り当てできません」の解決策
プロジェクトの作成と更新を許可する CRUD を作成する必要があり、属性の 1 つはプロジェクトを所有するクライアントです。プロジェクトが作成または編集されると、select タグを使用してクライアントが選択されます。
私はこのモデルを持っています:
このコントローラー:
ビューのこのフォーム(haml):
コードは scaffold で生成されました。不要な部分を削除して、select を作成するコードを追加しただけです。
最初に、モデル Proyecto で私はこれを持っていました:
しかし、「保護された属性を一括割り当てできません: cliente_id」というエラーが表示されます。同様の問題をstackoverflowで検索すると、cliente_idをattr_accessibleに追加する必要があることがわかりましたが、Googleで検索すると、セキュリティ上の問題によりattr_accessibleにフォアイングキーを追加してはならないことがわかりました。これは矛盾しています。
これは、cliente_id を attr_accessible に追加して、作成および更新メソッドをコーディングする正しい方法ですか? そうでない場合、正しい方法は何ですか?
私はレール3.2.8とルビー1.9.3p194で作業しています
jquery - cocoon を使用すると、Rails のネストされたフォーム モデルの作成がサイレント モードで失敗する
Mongoid 2.4.12 と Rails 3.2.8 をcocoonで使用しています。ネストされたフォームはフロント エンドで問題なく動作しているように見えますが、ネストされたモデルとリレーションが保存されていません。
計画
仕事
プロジェクト ビュー
タスクの一部
ここに私のパラメータがあります:
ご覧のとおりaccepts_nested_attributes_for
、などに関するエラーは発生していません。
私のprojects#create
アクションでは、後でデバッグして、1 つのタスクの配列が正しく返される@project.save
ことを確認できます。@project.tasks
ただし、このタスクは作成/挿入/保存されることはなく、その後の関係はありません。私が見逃している可能性のあるものについての提案はありますか?
ruby-on-rails - Railsで、属性の作成を妨げずに、更新できる属性を制限するにはどうすればよいですか?
JSONAPIを介して属性を作成できる状況があります。ただし、一度作成したら、更新されないようにしたいと思います。
この制約により、を使用している私の最初のソリューションではattr_accessible
不十分になります。Railsでこの種の状況を処理するための良い方法はありますか、update
それともメソッドで手動チェックを実行する必要がありますか?
ruby-on-rails - Rails:ブールattr_accessibleのデフォルトのメソッドの動作
ブール値が次のように定義されている通常のクラス(イベント)があります
そしてdbスキーマには
そのため、デフォルトのメソッドはアーカイブされていますか?自動的に定義されます。
デバッグセッションの後、私はこれを発見しました
最後の2つの値は両方とも真である必要がありますか?ここで何が欠けていますか?
これでも役に立たない:
前もって感謝します
ruby-on-rails - 特定のロールのすべてのフィールドに attr_accessible を適用する
管理コンソールですべてのフィールドをまとめて割り当てることができるように、特定のロールのモデル内のすべてのフィールドに attr_accessible を簡単に適用する方法を探しています。私はこのようなことをしたいと思います:
:all の使用は明らかに機能しません。フィールドがたくさんあるので、それらをすべてリストすることなく、すべてのフィールドに attr_accessible を適用できる簡単な方法はありますか? フィールドを追加するたびにこれを行うことを覚えておく必要はありません。
ruby-on-rails - attr_accessible の属性の MassAssignment エラー
私はモデルにいるActiveModel::MassAssignmentSecurity::Error: Can't mass-assign protected attributes: title
ときに取得しています。attr_accessible :title
以下のコンソール呼び出しのコードと出力を参照してください。
ユーザーモデル
テンプレート モデル
スタックトレース
大きな疑問は、なぜですか?何か不足していますか?タイプミスをチェックしましたが、何かを見落としているか、理解していないと思います。
attr-accessible - 保護された属性を一括割り当てできません: attr_accessible が既に追加されていても
attr_accessible属性が既に追加されていても、 :title、:url、:aboutを一括で割り当てることはできません。Railsコンソールでは問題ありませんが、オンラインフォームでは問題ありません。
ポストモデル:
ユーザー モデル:
ポスト コントローラーの作成:
私のフォーム ビューは、他のフォーム ビューと同じです。
ruby-on-rails-3 - Rails3の特定の方法でのみ列にアクセスする
User
との2つの属性を持つモデルがある:name
とし:age
ます。:age
「defmanipulate_age()」(いくつかのメソッド)だけが列にアクセスできるようにしたい。これにはuser.update_attributes!(:age => 10)
、例外をスローすることも含まれます。Rails 3の方法でそれを行うことは可能ですか?