CakePHP。 行動-不正行為!

いつものように、私は簡単な方法を探していません。いつものように、book.cakephp.orgでカバーされていないタスクに遭遇します;-)



いつも、私にとってプロジェクトの最も面倒な部分は、ページネーションとそれに関連するすべて(選択、ソート)でした。



そして今、もう一度、私は熊手を踏みました、そして私の質問への答えはノーです。



それで、タスクは何でしたか:



モデルA-hasManyモデルB

モデルB-モデルAに属する



モデルB-actAs(「画像」)



画像-Yevgeny Tomenkoの素晴らしい動作。これは、モデル内のレコードを保存された画像とリンクするのに役立ちます。



クエリModel B-> ...の形式の場合-動作は時計のように機能し、必要なデータ(この場合は写真)を受け取りました。



ただし、タスクがフォームのクエリを作成する場合



モデルB->モデル-> A(選択がモデルAのフィールドに沿った条件で)



検索とページネーションは正常に機能することが判明しましたが、関連するモデルBの結果には動作の痕跡はありません...必要な「歪み」なしでモデルフィールドを取得しました。



Containでのダンスダンス、注文のリクエストなど -何にもつながりませんでした。 Googleグループにも回答はありません。



そして今日、私は別のレーキを見つけましたが、すでに動作変換があります。 指示を使用し、そこにアドバイスされているように実行すると、私のお気に入りのペギングを除いてすべてが正常に動作します...



すなわち-i18nテーブルにあるフィールドでソートすることは不可能です。 動作しません。 明示的な形式で存在するフィールドのみ。 行くぞ



もちろん、i18nを介して作成されたテーブルのソートが迅速に機能する、または原則として、正常に機能するとは言いたくありません。 多分そうではないでしょう しかし、この場合、作成されたid以外の結果を何らかの方法で並べ替える必要がある場合、この動作を使用する機会はありません。 動作しません。 :(



そして、最初のレーキを2番目のクエリでバイパスできる場合(最初に、モデルBのIDのリストを取得してから、モデルBからすべてのレコードを直接要求します(ここでは、動作が機能します)。



2すべて:誰かがこれらの問題を解決した場合-コメントで解決策を共有してください。 CakePHP 1.2.3.8166についてです



All Articles