2017-01-26 25 views
1

Я новичок в CakePHP. У меня есть таблица, чтобы вести учет активности пользователя, создав в нем журнал. В таблице есть два столбцаПользовательская функция модели для вставки новой записи в cakephp 3

+----+------------+-----------+ 
| id | user_id | comment | 
+----+------------+-----------+ 

Я хочу передать значения внутри контроллера как

$this->ActivityLogs->log($user_id, 'Message sent'); 

log является пользовательской функцией внутри ActivityLogs модели, которая будет записывать еще некоторые данные вместе с передаваемыми данными

public function log($user_id = null, $message = null) 
{ 
    ... record code goes here 

    return true; 
} 

Но не удалось получить способ ввода запроса на вставку внутри модели. Как я могу создать собственные методы, подобные этому, а также кто-нибудь может предложить мне хороший ресурс для прохождения запросов и понимания модели.

+0

Сдайте на этой странице https://book.cakephp.org/3.0/en/orm/saving-data.html, это может помочь вам –

+0

Если бы вы попытались проверить документацию, вы видел бы это в основных разделах в левом столбце: https://book.cakephp.org/3.0/en/core-libraries/logging.html – burzum

ответ

1
public function log($user_id = null, $message = null){ 
    //I assume here that your table name is 'logs' 
    $logsTable = \Cake\ORM\TableRegistry::get('Logs', array('table' => 'logs')); 
    $log = $logsTable->newEntity(); 

    $log->user_id = $user_id; 
    $log->body = $message ; 

    if ($logsTable->save($log)) { 
     return true; 
    } 
    return false; 
} 

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

  • Нет связанных вопросов^_^