問題タブ [form-helpers]

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.

0 投票する
5 に答える
2323 参照

ruby-on-rails - レールでは、フォームヘルパーを使用するかどうか?

レールでは、フォームヘルパーを使用することをお勧めしますか? 内部的には、すべてが単純な html に要約されるので、html を直接記述してみませんか? ヘルパーを使用するよりも、直接 html を作成する方が明らかにパフォーマンスが向上します。フォーム ヘルパーの使用は規則のようなものですか、それとも Rails 開発者が従わなければならないものですか?

0 投票する
2 に答える
2859 参照

forms - CakePHPFormHelperを使用したポストフォーム送信でのURL変数の受け渡しの問題

私は最初のCakePHPアプリケーションを作成しており、パスワードリセットフォームの2番目の部分を作成しています。このフォームでは、ユーザーがサイトへのリンクを含む電子メールを受信し、クリックすると新しいパスワードの入力と確認を求められます。

ページのURLは次のようになります。

ビューは次のようになります。

ただし、これにより次のようなフォームが生成されます。

問題は、ユーザーID(この場合は8)がフォームアクションに追加されていることです。ここでは実際には問題ではありませんが、ハッシュをコントローラーに渡したい場合は、次のようにします。

$static_hashURLからのハッシュではなく8が入力されるようになりました。

使用するのではなく、自分でフォームタグを作成することでこれを整理できることは知って$form->createいますが、これを行うためのより簡単な方法はありますか?

0 投票する
2 に答える
2915 参照

php - CakephpFormHelperが「」を出力しない
"タグ

したがって、「 selfView 」というアクションを持つユーザーコントローラーがあります。これは次のようになります。(users_controller.php

これにより、1つのフォームを持つプロファイルページがレンダリングされます。これはページにレンダリングされる最初のフォームであり、期待どおりに正常に機能します。

コードスニペットを表示:(users / view.ctp

users/view.ctp 」から生成されるHTML

次に、フォームをレンダリングする要素を呼び出します。(users / view.ctp

そして、これはすべてがうまくいかないところです。何をしようとしても、この2番目のフォームを正しく印刷することはできません。フォームの中央部分が印刷されますが、開始タグと終了タグは印刷されません。それらがなければ、フォームは私には役に立たない。この時点で、私は本当にそれを手で書きたくありません。

これは、form(elements / my_apps.ctp)を出力するために使用しようとしている要素のコードです。

これは、「elements/my_apps.ctp」が出力するものです。

次のような開始タグと終了タグは印刷されません。

何か案は?デバッグするために私がやるべきことは役に立ちます。

アップデート:

私は手でコードを書き込もうとしましたが、それでも削除されています。ある種の後処理は行われていますか?それは私のフォームタグを削除する責任がありますか?

0 投票する
6 に答える
1367 参照

cakephp - CakePHPの「自動」出力フィールド?

現在、CRUD フォームに CakePHP の「automagic」フィールド要素を使用しています。
これは、私が使用していることを意味します

すべてを生成するメソッド。

これにより、正しい要素タイプが選択され、すべてが <label> 要素で div にラップされます。

現在、編集できないフィールドがいくつかありますが、それらを表示したいと思います(したがって、実際にはラベルはなく、スパンのみであり、 <input> コントロールの代わりに、単にいくつかのテキストがあります、またはスパン
また、「フィールド値」の内容を任意に制御できる必要があります。

$form->input でこれを行う方法はありますか?
これらすべてのマークアップを簡単に生成できることはわかっていますが、見栄えが悪く、非常に反復的です。

ありがとう!
ダニエル

0 投票する
1 に答える
666 参照

ruby-on-rails - RailsFormTagHelperに重要なselectメソッドとcollection_selectメソッドがありません

あなたが使用するときにこれを行うことができますform_for(@model...)

そして、出力は次のようになります。

モデルのないフォームを使用する場合、<option>タグを作成するための優れたヘルパーメソッドがありません。代わりに、これを行う必要があります。

FormHelperとFormOptionsHelperは、モデルをラップするフォームで連携して動作し、selectとを使用して作業をcollection_select簡単にします。ただし、プレーンform_tag(モデルなし)の場合、そのようなFormOptionsTagHelperはありません。 FormTagHelperにはselect_tagメソッドがありますが、オプションを手動で書き出す必要があり、無駄です。これはどこかで修正されたようです。

これらのオプションタグを手動で書くことを取り除くために自分のヘルパーを書くことはできますが、それは何をするのですかFormOptionsHelper#collection_select...モデルのないフォームに相当するものはありますか?

0 投票する
2 に答える
3184 参照

ruby-on-rails - Ruby on Rails:collection_selectでローカル変数を使用する方法

collection_selectメソッドを使用して<select>要素を作成しようとしていますが、適切な<option>を選択するには、collection_selectに渡される識別子がローカル変数ではなくインスタンス変数である必要があるようです(これは部分的に起こっています)。

したがって、の<select>を作成すると、categoriesデフォルトproductでは適切なカテゴリが選択されません。

_product_row.erb(機能しません):

スクリーンショット:

代替テキストhttp://img534.imageshack.us/img534/8929/screenshot20100421at120.png

事前にインスタンス変数を宣言することで動作させることができたのですが、これは私にとっては大きなハックのようです。

_product_row.erb(WORKS):

スクリーンショット:

代替テキストhttp://img534.imageshack.us/img534/1958/screenshot20100421at120l.png

このパーシャルは製品のコレクションを反復処理しているため、コントローラーで@productを宣言することはできません(何かが足りない場合を除いて、製品はこのパーシャルのローカル変数である必要があります)。

では、ローカル変数を使用して呼び出すときに、collection_selectを取得して適切なアイテムを選択するにはどうすればよいですか?

0 投票する
4 に答える
10919 参照

ruby-on-rails - Ruby on rails: デフォルト値属性でオプションメニューを選択

のリストにデフォルト値を持つ選択メニューを作成する必要があります<options>。これが私が必要とする方法です。

現在select、私は自分のフォームでこのヘルパーを使用しています

上記のコードはこれを生成します。( value="")

value="0"オプションリストに追加する方法を教えてくれる人はいますか?

0 投票する
2 に答える
442 参照

cakephp - CakePHP: 間接的に関連付けられたモデルの欠点

Cakephp で間接的に関連付けられたモデルを処理する際に問題が発生しています。私の現在のモデル設定は次のとおりです。

これらすべてのモデルに関する情報を 1 つのフォームに保存しようとしています。私が遭遇している欠点は次のとおりです。

  1. フォーム ヘルパーは、1 レベルの深さのフィールド タイプしか認識できないようです。

  2. saveAll() は、1 レベルの深さのレコードしか保存できないようです (複数のモデル フォームの場合)。

私はこれらの問題の解決策をあらゆる場所で探していますが、私は CakePHP を初めて使用するため、これらの問題を処理するための最新の方法または「正しい」方法が何であるかがわかりません。

どんなアドバイスでも大歓迎です。皆さん、ありがとうございました!

編集:失敗した試みのコードをここに投稿しました: http://bin.cakephp.org/saved/58501

0 投票する
4 に答える
2340 参照

ruby-on-rails-3 - メーラーのビューで form_for を再利用すると偽造エラーが発生する

テンプレート new.html.erb に form_for があり、DB に通常の保存を行い、成功時に電子メールを送信します。フォームが完全に入力されるように、メーラーが本文と同じ new.html.erb を送信し、モデルを渡すようにします。次のエラーが表示されます。

form_for タグの直後の行 (認証トークン タグを挿入しているため)。メーラーでテンプレートを再利用できるように、これを回避する方法はありますか?

メーラーコードは次のようになります

0 投票する
1 に答える
1238 参照

ruby-on-rails - Ruby on Railsフォームf.text_areaには、追加のスペースが含まれています

Rails、トラフblog_kitにはかなり平均的なフォームがあります

ブログ投稿を編集するとき、本文に突然追加のスペースが含まれます(視覚化するために_とマークされています)。

テキストエリアはスペースを意識しているため、スペースが表示されます。更新時に、それらはデータベースに追加されます。

これらのスペースはデータベースにありません(つまり、上記の誤った更新の前)。モデルBlogPost.find(1)にもこれらのスペースは含まれていません。

データベースをフェッチした後、部分的な形式でレンダリングする前に、一部のロジックがスペースを追加しているようです。候補者は次のとおりです。

  • BlueCloth。私はそれを有効にしましたが、ロードプロセスにフックする場所を見つけることができず、テキストエリアにレンダリングされる前に本文を変更します
  • HAML。_form.html.rbパーシャルは(まだ)_form.hamlに移行されていないため、hamlはこの部分から離れていると思います。しかし、それは問題の一部かもしれませんか?

どこから始めたらいいのかわからないので、どんなヒントでも大歓迎です。