問題タブ [grails-domain-class]
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.
grails - Grails のデフォルトの「hasMany」ドメイン属性の並べ替え
hasMany
マッピングステートメントを使用して、属性のデフォルトの並べ替えを設定しようとしています。私はgrailsのドキュメントに従っていますが、うまくいきません(grails 1.3.5)。私のコードは次のようになります:
エラー メッセージは次のようになります。
私のコードに誤りはありますか?
security - 保存時の Grails ドメインの変更
フィールドusername
とを持つユーザー ドメイン クラスがあるとしますpassword
。簡単にするために、パスワードを SHA-512 ハッシュとして保存したいとします。また、ハッシュする前にパスワードを検証したいだけでなく、保存する前にパスワードを透過的にハッシュしたいと考えています。ドメインオブジェクトでこれを行う方法はありますか?
言う代わりに:
ハッシュを検証できない場所
GORM イベントに続いて、次のことを思いつきました。
これで、新しいユーザーを作成するときに問題なく動作します。ただし、ユーザーを作成し、パスワードを指定して保存し、パスワードを変更して再保存すると、これらのメソッドはどちらも呼び出されず、プレーンなテスト パスワードが保存されます。
validation - カスタムGrails検証
2つのフィールドが等しくなく、一方が他方よりも大きいことを確認したいと思います。言っyearBorn
てyearMarried
。それらを等しくすることはできず、yearMarried
より大きくする必要がありますyearBorn
。
database-design - grailsドメインは継承可能ですか?
のネットワークをモデル化しようとしていますPerson
。APerson
は多く持つことができますFavorites
。これらのお気に入りは修正され、絶えず拡大しています。
ここで、Favorite
ドメインクラスの子が必要です。Favorite
私はマッピングbelongsTo
を持っています:
今私の子供のクラスで:
これは可能ですか、それとも私はGORMのはるか外側を考えていますか?このようなものを実装する正しい方法は何ですか?
validation - Grailsでブールフィールドが設定されるようにするにはどうすればよいですか?
ブール値を表す 2 つのフォーム フィールドのいずれかがチェックされていることを確認したいと考えています。しかし、これを行うための適切な制約はありません。nullable: false
動作しません。
2 つのフィールドのいずれかがチェックされているかどうかを確認するにはどうすればよいですか?
grails - Grailsは使用法に属します
記事、ユーザー、言語の3つのドメインクラスがあります。すべての記事は、指定された言語でユーザーによって書かれています。したがって、関係は(Article-Language:many-1)、(User-Article:1-many)です。
私は試してみます:
問題は次のとおりgrails generate-all
です。3つのドメインクラスすべてのすべてのコントローラーとビューを作成できますが、どのビューにもプロパティが入力されていません。テキスト入力、コンボボックス、エラーメッセージ、... Product、Language、Articleのidフィールドのみ。
「belongsTo」と「hasMany」をドロップすると、Grailsが問題なくすべてのビューを作成するため、エラーはリレーションシップの使用方法にあると確信しています。
私は何か間違ったことをしましたか?
java - grails は保存されませんが、エラーはありません
こんにちは、次のような非常に単純なドメインがあります
データを保存するコントローラーは次のとおりです。
obj.hasErrors() は false (エラーがないことを意味します) を生成しますが、データベースには保存されません。これをデバッグする方法はありますか?
ps: myutil.formatDate() --> 19/11/2010 などの日付文字列を Date() に変換するため
grails - 統合テストで GORM イベントが起動しない
beforeDelete イベントを使用して、オブジェクトで Grails GORM 削除を統合テストしようとしています。問題は、統合テストで beforeDelete イベントが発生しないことです。
ChallengeMember の関連部分:
グレイルズ 1.3.5
助言がありますか?
なぜ私は気にするのですか?
私のテストは次の理由で失敗しています:
org.springframework.dao.InvalidDataAccessApiUsageException: 削除されたオブジェクトはカスケードによって再保存されます (関連付けから削除されたオブジェクトを削除します): [com.v.ChallengeMember#1]; ネストされた例外は org.hibernate.ObjectDeletedException です: 削除されたオブジェクトはカスケードによって再保存されます (関連付けから削除されたオブジェクトを削除します): [com.v.ChallengeMember#1]
ただし、 beforeDelete が起動されているため、削除はブラウザーから正常に機能します。
database - Grailsを使用したドメインクラスなしでのDBへのアクセス
GrailsアプリをAS400/DB2データベースと組み合わせようとしているときに、問題が発生しました。IDとして使用する一意のフィールドがないため、ほとんどのファイルをマップできません。そして、たとえそうだとしても、それらはテキストベースのフィールドであり、長いタイプに変換できる形式ではありません。(PKが長いデータ型でなければならない理由がわかりません。意味のあるpkのシーケンスまたはAIが必要な場合でも、一意のキーが必要な場合はどうなりますか?ここで何かが不足していますか?)
設定したデータソースを保持し、ドメインオブジェクトを使用せずにDBへの直接SQLアクセスに使用できるかどうか疑問に思っています。
私が見たものは、ドメインオブジェクトを一時的なものとして設定することでした。しかし、idフィールドがなくてもそのようなことができるかどうかはわかりません。誰かがそれがどのように機能するか知っていますか?
何か案は?
ありがとう、ジョン
grails - Grails: プロジェクションを使用するときにドメイン クラスのインスタンスを返す方法
約 20 のプロパティを持つドメイン クラスがあります。ドメイン クラスで findBy を実行すると、データベースから選択されたすべての列を含む選択クエリが生成されます。これは、必要な列が 1 つしかない場合にパフォーマンスが低下する可能性があります。
そこで、withCriteria を使用することを考えました。
返される値はリストです。SampleDomain
しかし、必要なのはHow do I do that?のインスタンスです。
ありがとうございました。よろしく、 ジェイ・チャンドラン