Я хочу построить систему выставления счетов в CakePHP. Пока все хорошо, но я хочу создать функцию в CakePHP, чтобы правильно отображать имя клиента. В более ранней сборки (только PHP) Я builed это (в классе пользователя):Функция для правильного отображения имени
function get_display_name(){
if($this->company){
return $this->company;
} else {
return $this->frontname . ' ' . $this->lastname;
}
}
Но я не могу заставить его работать в CakePHP. Или я должен делать это в представлении?
EDIT
Я сделал CustomerHelper в Helper папке CakePHP, где я добавил это:
class CustomerHelper extends AppHelper {
function get_display_name(){
if($this->Customer->find('company')){
return $this->Customer->find('company');
} else {
return $this->Customer->find('frontname') . ' ' . $this->Customer->find('lastname');
}
}
}
Но я получаю фатальную ошибку в настоящее время. «Ошибка: Вызов функции члена находке() на не-объект»
Почему это не работает? Какая-то ошибка или что-то еще? –
Вы должны опубликовать весь свой класс 'User' ... – noslone
Это звучит неплохо для 2.x, где модели не являются объектами, хранящими данные напрямую. Лучше используйте find() и вспомогательный элемент для правильного форматирования вывода. Но вам нужно передать в свой массив данных клиентов (не пытаясь сделать модельные запросы у вашего помощника!). – mark