問題タブ [grails-controller]

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 投票する
2 に答える
1636 参照

grails - Grails: プロパティ Null エラー

いくつかのプロパティを持つ Modulo というドメインと、モデルからオブジェクトを作成して保存するメソッドを持つコントローラーがあります。シェルを実行すると、次のエラーが表示されます。

  • La propiedad [{0}] de la clase [{1}] no puede ser nulo

しかし、nullable 制約を true に設定すると、エラーが再び表示されます。私はこのcosntraintを設定すべきではないと思います。

モデルは、id allow null を除くすべてのプロパティを持つ mysql テーブルにリンクされています。

私はここで何か間違ったことをしていないと思います。何かアドバイス??

ドメイン: モジュロ

コントローラ: 例

ありがとう。ホセ

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

grails - Grails - cross controller code, execute on every request

Is there a way of executing some piece of code before any controller action gets called?

I need to set a session variable based on the value of a get parameter, without taking into account which controller gets called.

Of course, once this processing is done, the request needs to follow its normal way to the corresponding controller/action.

Thanks

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

grails - コントローラーでドメインクラスにアクセスできない

Grails と groovy は初めてです。
ドメイン クラスを作成しました。

今、私はコントローラーを作成しました

その中で、オブジェクトを作成するとエラーが表示されます。

私が得たエラーは

インポートしようとしましたが、そこにも表示されませんでした。私はgrails 1.3.7とIntelliJ IDEA 10.0.2で働いてい
ますありがとう

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

json - 空のボディでgrailsコントローラーアクションをGETするときのJson解析エラー

.json ファイル拡張子 (例: http://localhost:8080/myapp/mycontroller/myaction.json ) を使用して、本体が空の GET リクエストを grails 1.3.7 コントローラーに送信すると、リクエスト解析例外が発生し、 grails は空のボディを JSON に解析しようとしているようです。同じリクエストを同じアクションに送信しても、拡張子 .json を付けない場合、エラーは発生しません。

このエラーを取り除くにはどうすればよいですか?

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

grails - Grails formRemote - マルチフォームでのリダイレクトを回避するには?

Screening という名前のマスター コントローラーがあります。このコントローラーのビューワークフローを構築しました(例:作成、編集、リスト、表示)。

私の編集ビューでは、Jquery TABS を使用しています (各タブは、ドメインに関連付けられたテンプレートからコンテンツを取得します)。要約すると:

したがって、私の Screening 編集ビューでは、formRemote を使用してテンプレート パーツを追加しています。例:

スクリーニング ビューで検証/保存を維持したいのですが、どうすればこれを処理できますか?
実際、ユーザーが保存を試みた場合 (または検証が失敗した場合)、ユーザーは demographics controller/view にリダイレクトされます。これを回避するには?ユーザーをリダイレクトしたくありません。
1 つのコントローラー/ドメインで (テンプレート/ドメインの関連付けを使用して) マルチフォームを処理する最良の方法はありますか?

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

grails - Grails でモデル、コントローラ、およびビューの間の不一致を処理する「正しい」方法は何ですか?

もちろん、私の最初の Grails プロジェクトでは、私のデータ モデルと UI デザイナーが望むプレゼンテーションとの間に狂ったような不一致が生じることがあります。

問題空間の簡略化されたステートメントは次のとおりです。

食料品店には、にんじん、セロリ、トマトの 3 つの材料があります。このアプリの目的は、ユーザーの買い物リストを保存することです。つまり、それぞれ何個買うかです。

Web デザイナーは、複数の HTML SELECT でこれを実現したいと考えているため、ドロップダウンから購入する材料を選択し、その横に数量を入力します。さらに成分が必要な場合は、さらに SELECT を追加する JavaScript リンクをクリックします。

設計では、各ドロップダウンが同じであり、行数が無制限であることを指定しています。したがって、3 つのニンジン、9 つのセロリ、2 つのセロリ、5 つのニンジン、および 1 つのトマトに対応する 5 つの行を持つフォームを取得できます。

これから私が生産する「べき」ものは、​​ニンジン 8 個、セロリ 11 個、トマト 1 個の注文です。

なぜこれが悪い UI 設計であるかについてのすべての議論に入るわけではありませんが、実際には、この種の不一致を考慮してモデル/コントローラーをビューにマップし、保存された送信を送信して最終的に編集する方法を理解したいと思います。

私の最初のアイデアは次のとおりです。

  • インバウンドデータの場合、パラメーターといくつかのロジックからコントローラーで新しいマップを構築し、値を 3 つの新しいキーと値のペアに正しく追加し、その新しいマップをリクエストパラメーターマップ自体ではなく bindData メソッドに渡します。
  • ビューを編集用に表示するには、afterInterceptor を使用して、モデルのその部分をこれらの SELECT の正しい数に書き換えます。元の 5 行の注文が、編集用に表示されると 3 行になることを認識してください。

しかし、Command オブジェクトについて読んでいると、それがより良いアプローチになるのではないかと思います。

オンラインで多くのページを読みましたが、この種の MVC の不一致に対する解決策は見当たりません。

明らかな答え (デザイナーと戦う) は別として、これを処理する "Grails" の方法は何ですか?

0 投票する
3 に答える
678 参照

grails - Grails フォームのエラー処理: バインディング 1:1 オブジェクト マッピング

2 つのドメイン オブジェクトに関連するフィールドを含む登録フォームがあります。ユーザーとプロファイル。この関係は、User ドメイン クラスが所有する 1:1 のマッピングです。

ユーザー コントローラーの「登録」アクションは、フォームの値をマーシャリングし、検証エラーがなければユーザー オブジェクトを保持し、フォームが送信されるとアプリケーション ルートにリダイレクトします。それ以外の場合、コントローラーは失敗した値が事前入力されたフィールドを示す登録フォームにリダイレクトします。

ただし、実際には、検証が失敗した場合、失敗した値はビューに表示されません。以下は、登録アクションのコードです。

以下は、ユーザーおよびプロファイル関連のフィールドを示すビューからの HTML の抜粋の例です。

構文的には、すべて問題ないように見えます。値にアクセスするために適切な命名規則とグレイルの補間を使用しているので、これが期待どおりに動作しない理由については、私は機知に富んでいます。

コメントや提案をいただければ幸いです。

ありがとう、トム

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

grails - grailsでxmlファイルを読むには?

私は grails に非常に慣れていません。おそらく、私が尋ねている最も単純な質問でしょう。ログインページを作成した自己学習用の非常に単純なアプリケーションを作成しています。ログインに成功すると、xml ファイルが読み込まれ、出力が表示されます。誰でもサンプル例でこれを説明できますか。また、xml ファイルのフォルダーの場所を教えてください。以下は私のコードです: UserController.groovy

myxml.gsp

URLMappings.groovy

ユーザーのログイン時に表示される最初のページとして index.gsp がすでにあるので、URLMappings で複数のビューを指定することはできますか? また、返信の1つで提案されているように、「myxml」という名前のアクションを定義し、「/ controller」/ myxmlなどのURLにリダイレクトする必要がある場合、それはどこになりますか? 助けてください!

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

grails - Spring Security と Grails - URL のカスタマイズ

現在の Grails アプリでは、すべてのアカウント管理に取り組んでおり、すべてのアクションを/account/ * URL パターン の下にマップしたままにしたいアカウント コントローラーの下で行われるようになりました。

Spring Security Core を使用しています。ログインに失敗しても、アプリは引き続き
/login/authfail?login_error=1に誘導します /account/authfail?login_error=1
を使用したい

したがって、私の質問は、デフォルトの
SpringSecurityUtils.securityConfig.successHandler.defaultTargetUrl
をどのように構成し、失敗 URL が何であれ (このプロパティの名前を知る必要があります)、これはどこかに文書化されていますか?