2011-01-19 2 views
1

ниже только понятном Пример моей проблемыКак создать виртуальное поле в CakePHP ver. 1,2

«У меня есть таблица с именем„дома“связаны с модели„Home“с поля ID, название, цена.

Я хочу создать виртуальное поле с именем «calc_price», которое основано на некотором сложном вычислении, которое зависит от условий поиска для конкретной записи.

После что я хочу постраничной модель «Home» с помощью

$this->paginate('Home',array('order'=>'calculated_price ASC')); 

"

У меня есть текущий проект улучшающего, которые используют торт версии 1.2, которые не поддерживают концепцию„virtual_field“, как поддерживается Cake Ver 1.3

Поэтому, пожалуйста, обеспечить решение этой проблемы ....

Как постраничной & «заказ» поле, которое создается динамически с помощью CakePHP $ this-> постраничной();

How/Can we tweak take 1.2 для поддержки концепции виртуального поля пирога 1.3? ИЛИ есть ли лучшее решение?

+3

[Миграция с CakePHP 1.2 до 1.3] (http://book.cakephp.org/view/1561/Migrating-from-CakePHP-1-2-to-1-3) – deizel

+0

Есть ли способ эта рассчитанная цена может быть рассчитана в SQL? например SUM (field1, field2) –

ответ

0

Если расчет производится во время выполнения для каждой визуализации, почему бы вам просто не использовать $this->set('calulated_price'=>calculated_price); ?

+0

Или, может быть, это поле в таблице пользователей? –

0

Единственное решение:

Создать «невиртуальный» поле в таблице пользователей, где вы рассчитать цену с помощью методов модели обратного вызова например afterSave()

Смежные вопросы