問題タブ [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_accessible
場合、スクリプト/コンソールにも当てはまりますか? attr_accessible
コンソールからもアクセスできないと指定しなかったものを意味しますか?
ruby-on-rails - モンゴイド、set_table_name & attr_accessible
ruby 1.9.2-head で rails3 edge と mongoid 2beta6 を使用しています。
ActiveRecord の set_table_name のように、テーブル名を手動で変更するにはどうすればよいですか? たとえば、私のモデルのサインアップは、「サインアップ」ではなく、「ユーザー」テーブルをストレージに使用する必要があります。
もう 1 つの質問は、attr_accessible AR が提供する動作を実装する方法です。
ありがとう、コリン
ruby-on-rails - Railsとattr_accessible:一括割り当てできない属性が一括割り当てされている場合に例外を発生させる方法はありますか?
attr_accessibleで許可されていない属性を一括割り当てしようとした場合に、レールでエラーを発生させる方法はありますか?
これは、開発時に、光沢のある新しいモデルが機能しない理由を思い出させるのに便利です。また、悪意のあるアクティビティを検出するために本番環境にログインすることもできます。
レール2.3.8を使用していますが、間もなく3に移行する予定です。
ruby-on-rails - バグ?has_many 関連付けを更新するために、params を 2 回一括割り当てする必要があります
私は has_many :telephones Register model accept_nested_attributes_for :telephones, :reject_if number and code blank? を持ち、attr_accessible :telephones_attributes (および他のすべてのフィールド) を持つ Register モデルを持っています。
電話は belongs_to :register で、すべてのフィールドに attr_accessible があります
フォームがパラメーターを送信するとき、それは適切に形成されているように見えますが、フォームフィールドが @register.attributes = params[:register] に送信されると、すべてのフィールドが更新されますが、既存の電話は更新されません (更新を取得する必要があります)。そのフィールドも)、以前の状態のままです(デバッグ時に確認しました)
これは奇妙なところです。コンソールでテストすると、params に関するものだと思っていました。そこで動作させることができたので、初めて has_many 関連付けに対して必要なように動作することを発見しました。私はそれを割り当てようとしましたが、コントローラーでこれを試しました(大量割り当てパラメーターを2回)が機能します。
もちろん、私が model.attributes = params を割り当てに使用しているという事実と関係があるに違いありません。私はこの方法でそれを行っているので、システムへの変更の監視を保存することもできます(そして、私はこれを行っていません)。私は current_user のようなコントローラーに固有であると感じるいくつかのデータにアクセスする必要があるため、 before_filters で)おそらく設計が不十分です...しかし、それは奇妙ではありませんか?これが機能するには、2回一括割り当てする必要がありますか? これは何かのバグですか?それを修正する方法があるかどうか誰かが知っていますか?
- 私はレール2.3.8、ルビー1.8.6を使用しています
編集: これがサンプル コードです。このコードの多くはポルトガル語です。
telefone = 電話、cadastro = レジスター
ご覧のとおり、いくつかの関連付けに対して行われた変更を集約する all_changes メソッドを持っています。一度に 1 つのコメントを追加する手段として、comments(comentario_interno/externo) のカスタム セッターがあります...
ruby-on-rails - Ruby on Rails で ActiveResource を使用した条件付き 'attr_accessible'
RoR3 アプリケーションが 2 つあります。
http://users.domain.local
http://profiles.domain.local
「users/models/profile.rb」を作成しました:
「profiles/models/profile.rb」には次のものがあります。
私のプロファイルの SQL テーブルには、次の列が含まれています。
- ID
- 名前
- ユーザーID
したがってProfile.create(:name => "test_name")
、新しいプロファイルを実行するhttp://profiles.domain.local
と、「test_name」という名前で作成されます。
明らかなセキュリティ上の理由から、「user_id」属性にアクセスできるようにしたくありませんが、「users」アプリケーションからプロファイルを作成するときにそれを設定する必要があります。
私はそれを作るために多くの方法を試しましたが、簡単な解決策を見つけることができません. おそらく、if
「ユーザー」アプリケーションからの要求を満たす「プロファイル」アプリケーションの「attr_accessible」の近くのステートメントで可能です。
誰か助けてくれませんか?
ruby-on-rails - 同じフィールドでattr_accessorとattr_accessibleを使用する
次のコードでバックグラウンドで何が起こりますか?
ヒント:クラスをインスタンス化するときに、データベースに永続化されますか?なぜまたはなぜそうではないのですか?
ruby-on-rails - Rails Deviseのattr_accessibleの問題
Rails 3 アプリにデバイス認証を追加しようとしています。このチュートリアルに従って、管理者ユーザーのみに role_ids の attr_accessible を動的に設定しようとしている以外は、すべてうまくいっています (通常のユーザーがロールを変更することは望ましくありませんが、管理者は変更できるはずです)... 問題は、 railscast チュートリアルのアプローチでは、実際にはデバイスが内部ですべてを処理しているときに、コントローラーの動作を変更するアクセス権があることを前提としています。
助けてください
ruby-on-rails - Rails の Model オブジェクト内からアクセサ メソッドを呼び出す
私のモデルには次のメソッドがあります
モデルには needs_review という属性がありますが、デバッグすると新しい変数として保存されます。もしそうならself.needs_review=true
、それはうまくいきます。私にはattr_accessible句はありませんが、accepts_nested_attributes_forはあります。
なぜこれが起こっているのでしょうか?
ruby-on-rails - Rails3でファイル名、ファイルサイズなどのNULLSを使用してデータベースを更新するペーパークリップ
Rails3 アプリに Paperclip を実装しようとしていて、Emerson Lackey の railscast (http://www.emersonlackey.com/article/paperclip-with-rails-3) をモデルとして使用しています。する (特定のモデルの複数の写真を用意する)。ただし、画像に関する NULLS 以外のものを保存する子オブジェクトを取得していません。
複数の車の写真を持つ親モデルの車を次に示します。
そして、車の写真のモデル:
新しい車を保存すると、車は以前と同じように正常に保存されますが、CarPhotos は保存されません。Webrick からの出力は次のとおりです。
これは 2 つのモデルの attr_accessible マクロと関係があると思いますが、それが何であるかを正確に判断することはできませんでした。Emerson のソース コードには create メソッドの足場からの変更がないため、フォームから値を保存するように子を取得するために更新する必要があるかどうかはわかりません。ビューの form_for @car に :html => { :multipart => true } があります。手がかり?前もって感謝します。