問題タブ [cfwheels]
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.
model-view-controller - CFWheels - フォームを自己投稿するには?
私は車輪が初めてで、まだ学んでいます。フォームのすべての投稿は、特定のモデルのメソッドにマップするアクションを呼び出す必要があるようです。ただし、フォームがそれ自体に投稿することは可能ですか?
私が避けたいのは、アクションビューに直接移動する人々です-これはエラーをスローするようです. また、自分のビュー フォルダーにたくさんの空のファイルを配置する必要がなくなる可能性があるため、多くの自己投稿を行いたいと考えています。
私が考えていたもう 1 つの利点は、フォームが自己投稿である場合、それをグローバルに使用できるという利点があるという事実でした。たとえば、ヘッダーに、ユーザーが Web サイトの任意の場所に入力するフォームがあるとします。または、ユーザーがどこから来たのかを検出し、動的に redirectTo を実行する方法はありますか?
どうもありがとう、マイケル。
model-view-controller - CFWheels-モデル内のフォームを検証してからルックアップを実行して別のメッセージを出力するにはどうすればよいですか?
私の「リンク」モデルには、いくつかの基本的な検証があります。その1つは、ユーザーが送信しているリンクが既にデータベースにあるかどうかを確認することです。
リンクがすでにデータベースに送信されている場合は、そのことを知らせて、以前に送信されたリンク(基本的にはURL)に転送します。
これどうやってするの?私のモデルはこれまでのところ次のようになっています。
非常に基本的です。validatesUniquenessOf()はうまく機能しますが、検証ロジックでもう少しやりたいと思います。フレームワークなしでそれを行っていた場合...もちろん、いくつかの標準的なロジックを実行しますが、ホイールが必要とする方法で作業したいと思います。
もう一度CFWHEELSに感謝します!
model-view-controller - CFWheels-リダイレクト後にerrorMessagesForを使用するにはどうすればよいですか?
コントローラでリダイレクトした後に#errorMessagesFor()#メソッドを使用する方法はありますか?
私が尋ねる理由は、フォームを同じページに残したいということです。
私は次のようなURLを持っています:
/ link / submit /
投稿するフォーム:
/ link / linksubmit /
しかし、私はそれを/ link /submit/に戻して欲しいです。
私はこれを行うことができ、それは機能しますが、#errorMessagesFor()#は私のビューでは機能しなくなります。
フォームのフィールドに特定のエラーメッセージを表示したいので、これに「フラッシュ」メッセージを使用したくありません。検証エラーをフラッシュメッセージに渡す方法はおそらくありますか?
ありがとう、マイケル。
model-view-controller - CFWheels - フィルタ 'except' に関する問題。競合するアクション名
ユーザーセッションが特定のアクションに存在するかどうかを確認する関数を実行するフィルター設定があります。
問題は、これらがアクション名であるということです...私が持っている他のコントローラーと競合しています。
たとえば、「ユーザー」と「リンク」の 2 つのコントローラーがあります。これらのそれぞれには create というアクションがあるため、私の URL は次のようになります。
/user/create/ /link/create/
フィルターは、どのコントローラーに関連付けるかをどのように知ることができますか? 「except」句の特定の「アクション」の前にコントローラー名を付ける方法はありますか?
たとえば、次のようなものかもしれません。
これを試したのを覚えていますが、うまくいかず、失敗しました。
ここで私が言っていることを理解していただければ幸いです。すべてのアクションに個別のコントローラーで完全に一意の名前を付ける必要はありません。
ありがとう、マイケル。
coldfusion - cfwheels-複合キーテーブルを使用してネストされたプロパティを更新する
ネストされたプロパティを持つモデルを更新するために、より良いセットアップを機能させようとしています。
現在、編集ビューでtextFieldTagを手動で定義し、名前を次のように設定してparams構造体を作成しています。"myModel[myNestedProperty][#modelID#,#key2id#][name]"
更新アクション中..。
使用するだけmyModel.update(params.myModel)
では、削除が必要な要素がある場合、更新を機能させることができません
そのため、myModelと同じIDを持つネストされたプロパティのすべてのモデルを破棄します。この場合、それは機能します。
欠点は、更新が失敗した場合、ネストされたプロパティがすべて失われることです。
モデルを削除して実行する前に、最初にすべてのモデルを取得しようとしまし.save
たが、何らかの理由で機能しません。
cfwheelはチェックボックスとのこの種の関係のために設定されているように見えますが、テキストフィールドを操作してフォーム内の項目を選択するには、cfwheelが必要です。
アップデート
私は別の問題があることに気づきました。基本的に、これを拡張して、複数のネストされたプロパティと関係で使用できるようにしたいと思います。
問題は、特に一部のドロップダウンの名前を設定する方法にあります。
name="myModel[myNestedProperty][#modelID#, ][nestedID]"
問題は、2番目のIDは、選択した値を使用するのではなくIDとして割り当てられるため、宣言できないことです。
正直なところ、これは私がずっと戦ってきた問題の1つです。コントローラーでモデルを再生成することで対処していますが、まだその問題を解決していないことを忘れてしまいました。
これらの値をまったく使用せず、構造から動的に入力する方法はありますか?
tcat[34,0][catID]
名前またはtcat[34,][catID]
、(catIDは2番目のIDである必要があります)を(切り捨てて)持っているとしましょう。
生成されるparamsのtcat構造は
また
paramsのtcat構造体に次のような複数の構造体を持たせたいのですが。
これを回避する方法はありますか?
私は多くの複合キーのネストされたプロパティを使用していますが、この部分だけを機能させることができれば、はるかに簡単になります。名前をjavascriptで更新する方法が1つあることは知っていますが、それが(非常に)最後の手段になると思います。
coldfusion - CFWHEELS の主キー フィールドの名前を変更する方法は?
これは私が試したものです...しかし、何らかの理由で "model("user").primaryKey() はまだ古い "User_Id" 列を返しています...
更新
問題は「足場」プラグインにあります。「PROPERTYLIST」ではなく「COLUMNLIST」を使用しています
これを修復したところ、現在は正しく生成されているようです。
model-view-controller - MVC (CFWheels) で 2 つのコントローラー/モデルにわたって 1 つのフォームを処理する方法は?
私は古い CFML 開発者で、CF on Wheels と MVC プログラミング全般は初めてです。私はすぐにそれを取り上げていますが、私には明らかではないことの1つは、オプションで複数のdbテーブルレコード(モデル)を更新するフォームを提供する方法です。特にユーザー情報とユーザー プロファイル情報用のタブ付きフォームを設定したいと思います。前者は必須で、後者は必須ではありません。このデータは、2 つの異なる 1 対 1 のテーブルに格納されます。2 つの「新規」ビューまたは「編集」ビューを呼び出し、2 つの「作成」または「更新」プロシージャを実行して、2 つの異なるテーブルに影響を与えるために必要な設定は何ですか。それとも、私はこれについてすべて間違っていると考えていますか。
更新: 私がやろうとしていることに関する情報を追加します。簡単にするために、2 つのタブと 2 つのテーブルに固執しますが、この例では少なくとも 3 つを見ています。
したがって、Users テーブルと UserProfiles テーブルがあり、1 対 1 で関連付けられた User.cfc と UserProfile.cfc という名前のモデルがあり、UserProfile は User に依存しています。かなり標準的なもの。それぞれにコントローラーがあります: Users.cfc と UserProfiles.cfc で、それぞれにアクションが含まれています。追加、編集、作成、更新、明らかなこと (表示フォームの追加と編集) を行います。それぞれの追加/編集フォーム フィールドを表示するパーシャルがあるので、それは既に準備されています。ここで、両方のテーブルを同時に更新できる効果的な単一の追加/編集フォームを作成したいと考えています。タブはあまり重要ではありません。事実上、すべてを 1 ページにまとめることができます。
だから概念的に私は次のようなことをしています:
2 つの異なるコントローラーの作成アクションと更新アクションを基本的に組み合わせた別のコントローラー アクションを作成する必要がありますか?
喜んで熱心なCFWheelsの初心者からの前もって感謝します...
ブライアン
mysql - mysql データベースへの挿入でエラーが発生しました
cfwheels (coldfusion orm フレームワーク) を使用しています。
最近、一部のデータを以前のホストから新しいホストに移動しました。今、テーブルに挿入しようとしていますが、次のエラー メッセージが表示されます。
データベースを調べたところ、ID 13651 のレコードが既に存在するようです。したがって、問題はmysqlが正しい自動インクリメント値を生成することにあると思います。
coldfusion - cfwheels-マルチレベルのネストされたプロパティを持つレコードを削除します
より多くのネストされたプロパティを持つネストされたプロパティを持つモデルがあります。
house
hasManypets
にはたくさんあるとしましょうlegs
レベルが1つしかない場合は簡単に機能しますが、レベルが2つある場合、はレッグテーブルの外部キーであり、cfwheelsが最初に削除しないpets
ため、削除時にエラーが発生します。petsID
追加のコマンドで自分で削除できることはわかっていますが、この種の削除を許可する設定を見逃したのではないかと思います。
coldfusion - Railo での構造体キーの取得に関する問題
Railo と cfWheels を使用してアプリケーションを構築します。
ラジオ ボタンのグループを含むフォームを作成しました。各グループは同じ名前を持ち、その名前は配列参照 (response[1] など) です。23団体あります。
フォームを送信するたびに、StructKeyList または StructKeyArray のいずれかを使用して応答配列キーをフェッチし、最終的に返されるキーの数を確認すると、21 が返されます。
2つのグループの結果が常に結合されていることを確認するためだけに、キーのダンプを作成しました。
Adobe ColdFusion で同じコードを試したところ、問題なく動作しました。異なる値を持つ 23 の応答が得られます。