2015-04-05 4 views
-2

Эй, я пытаюсь получить данные из таблицы. Я могу пройти через tableregistry внутри контроллера. Имя моего контроллера - messagecontroller.ph. Имя таблицы mysql - это сообщения: и вот мой кодМодель Cakephp3.0, как работает новая модель orm

public function view($pid) 
{ 

    $messages = TableRegistry::get('Messages'); 
$query = $messages->find(); 

foreach ($query as $row) { 
    echo $row->title; 
    } 

, как сделать это в messagetable я имею в виду, как записать его в таблице сообщений и как показать, что в контроллере или он будет непосредственно взаимодействовать с видом

+1

Перед вами заходите слишком далеко, вам нужно посетить книгу CakePHP. Подход, который вы принимаете, совершенно неправы ... Разработчики приложили много усилий, чтобы собрать эту книгу. Однажды я прочитал всю книгу, и я постоянно обращаюсь назад, поэтому я вижу, как они ее положили убедитесь, что люди легко знакомы с картой CakePHP ... это ваш лучший выбор. Просмотрите книгу http://book.cakephp.org/3.0/en/index.html –

+0

У меня есть проблема, которую я просто хочу понять с примером –

+1

Прочтите руководство. Он включает примеры кода и представляет собой структурированный способ узнать о структуре и ORM. Ваш вопрос показывает, что вы ставите * ноль * усилие в чтении чего-то и просто проходите проб и ошибок и задаете самые простые вещи, все из которых описаны в официальном руководстве. Вы хотите, чтобы люди копировали и вставляли документацию здесь для вас? – burzum

ответ

0

я найти решение, как создать тощий контроллер в cakephp3.0

У меня есть таблица MySQL называется сообщениями, и я создал два файла один MessagesTable.php вот код:

enter code here <?php 
     // src/Model/Table/UsersTable.php 
     namespace App\Model\Table; 

     use Cake\ORM\Table; 
    use Cake\Validation\Validator; 
    use Cake\ORM\TableRegistry; 

     class MessagesTable extends Table 
    { 



    public function validationDefault(Validator $validator) 
    { 
    $validator 
     ->notEmpty('title') 
     ->notEmpty('messages'); 

    return $validator; 
    } 



    function myMessages() { 
     $query = $this->find('all'); 
     $results = $query->all(); 
     $data = $results->toArray(); 

     return $data; 



     } 



     } 

Здесь я создал функцию, называемую функцию myMessages()

И я назвал его в messagescontroller .php с помощью:

$data = $this->Messages->myMessages(); 

полный код:

$data = $this->Messages->myMessages(); 

    foreach ($data as $row){ 
    echo $row->title; 
    } 
0

Ф.О. Llow ниже шаги и изменить ArticlesTable класс и класс контроллера, как на стол, и имя контроллера: Создание ArticlesTable.php под Src \ Model папку \ Таблица ниже

<?php 
namespace App\Model\Table; 
use Cake\ORM\Table; 
class ArticlesTable extends Table 
{ 

} 
?> 

В контроллере:

$data = $this->Articles->find(); 
foreach ($data as $row){ 
    echo $row->title; 
} 
Смежные вопросы