モデルXのインスタンスを作成してデータベースに保存するために必要な情報を送信するためのフォームを作成したいが、少し問題がある。テキストエリアのようなフォームフィールドを追加する方法と、createメソッドが呼び出されたときにそれらの値にアクセスできるようにする方法を知っていますが、フォームの一部ではない値をアクセス可能にしたい場合はどうしたらいいですか?たとえば、私のHTML文書の<div>
にあるテキストにアクセスし、それをモデルXの作成メソッドに送信したい場合(つまり、コンテンツ変数などのように格納できる)どうすればよいでしょうか?それ、どうやったら出来るの?Railsフォーム - フォームの一部ではない変数へのアクセス
答えて
短い答えはできません - サーバーにデータを送信するには、フォームフィールドに入力する必要があります。
これ以上の方法があり、いくつかのオプションがあります。テキストエリアにテキストを置き、divのようにスタイルを設定するか、テンプレートが作成されたときに隠しフィールドに配置するか、javascriptを使用します隠しフィールドにコピーしてください...あなたが本当に何をしようとしているかによって異なります。おそらくあなたはいくつかの詳細を与えることができますか?あなたは何ができるかattr_accessor
を使用したいあなたのモデルでは
ええ - 基本的に、ユーザーがテキストをハイライト表示すると、そのテキストをドキュメントからコピーして、ページのdivにダンプします(その部分が機能します)。次に、ユーザーがページの[作成]ボタンをクリックしたときに新しいExcerptモデルを作成したい場合、モデルに "content"属性をdivにダンプしたテキストに設定させます。 – Kvass
なので、コンテンツをdivにコピーするときに、フォームの隠しフィールドにコンテンツをコピーしてから、フォームがサーバーに送信されたときにそのコンテンツを選択することもできますか? – chrispanda
私はそれが可能だと思うが、私はそれを行う方法を知らない。 – Kvass
は、モデルで使用できる仮想属性を作成しますが、その後に廃棄される使用attr_accessor
です。例えば
:
アプリ/ models.post.rb
class Post < ActiveRecord::Base
attr_accessor :some_variable
#now you can access 'some_variable' this variable in the model
#try Post.some_variable in the console
end
アプリ/ビュー/記事/ _form.html.erb
<div id="form">
<div class="field">
<%= f.label :some_variable %>
<%= f.text_field :some_variable %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
</div>
申し訳ありません - 詳細な応答は本当にありがとうございますが、私はそのすべてを追うことができませんでした。私の問題に特有です(私は前の答えに対するコメントで何をしようとしているのか、より詳細な記述を書いています) – Kvass
Ok。それが意味をなさないかどうか私に教えてください。私はあなたがやろうとしていることをどうやって実践したかを模索しようとしていました。あなたはあなたがjavascriptを除いてdivから変数を得ることはできませんが、それはあなたがしなければならないことではありません。そして、あなたが本当にあなたがそれをする必要があると感じるなら、あなたはフォームの入力値ではなくdivの理由を説明する必要があります。 – s84
- 1. フォームのタブページ内の変数へのアクセス
- 2. フォーム上のjQuery変数へのアクセス
- 3. 他のフォーム変数へのアクセス
- 4. Railsフォーム:外部フォームへの投稿と外部返信ページへのリダイレクト
- 5. Rails別のフォーム内のフォームの一部をレンダリングする
- 6. javascriptフォームへのアクセス
- 7. Angular ngMessages - 複数のフォーム値へのアクセス
- 8. 部分的なフォーム対部分的なフォームのためのRails規則
- 9. Ruby on Rails/Hamlの部分的なフォームとネストされたフォーム
- 10. symfony:フォームからのコントローラの変数へのアクセス
- 11. Xamarinフォーム - 別のページの変数へのアクセス
- 12. reduxフォームの値へのアクセス
- 13. フォーム変数にアクセスする
- 14. C#ダイナミックコントロールへのアクセスWindowsフォーム
- 15. PayPalフォーム変数へのアクセスに関する問題
- 16. 別のフォームからのアクセス変数
- 17. フォームでの管理モデルインスタンスへのアクセス
- 18. VBAフォーム関数のコントロールへの変換
- 19. ajax PHPへのフォーム変数のPOSTグループ
- 20. AngularJs:内部のフォーム - コントローラからアクセスできない場合
- 21. HTMLフォームをRailsフォームに変換する:全部のノブを手助けする
- 22. データベーステーブルとのフォーム変数の一致
- 23. プロパティの一部への安全なアクセス
- 24. Rails + Vue:インスタンス変数へのアクセス
- 25. Rails - データベースへのフォーム値のマップ
- 26. Rails複数の選択フォーム
- 27. scala.jsフォームの処理クライアント/ scala.jsクライアントのフォームへのアクセス
- 28. Zendの入力フォームの動的作成フォームへのアクセス方法
- 29. Firebaseの外部変数へのアクセス
- 30. 基本フォームから継承されたフォームのコンポーネントへのアクセス
あなたが追加するコードを表示することができますテキストボックスのコンテンツ属性へのテキスト? – natedavisolds