Учебники

Phalcon — Модели

Модель в архитектуре MVC включает логику приложения. Модель является ядром взаимодействия с базой данных. Он должен иметь возможность управлять обновлением, удалением, вставкой и извлечением записей в соответствии с запросом пользователя.

Для понимания взаимодействия модели в среде Phalcon PHP необходимо выполнить следующие шаги.

Шаг 1 — Создание базы данных.

Для любого программного стека LAMP, WAMP, XAMPP довольно просто создать базу данных с помощью инструмента базы данных phpmyadmin .

Ниже приведен SQL-запрос для создания базы данных.

create database <database-name> 

Шаг 2 — В разделе phpmyadmin перейдите на вкладку Базы данных, укажите имя базы данных и нажмите кнопку «Создать», как показано на следующем снимке экрана.

PHPMyAdmin

Шаг 3 — После успешного создания базы данных создайте таблицу, которая поможет ее объединению для создания модели в платформе Phalcon.

Используйте следующий запрос для создания новой таблицы с именем «users».

DROP TABLE IF EXISTS `users`;  

CREATE TABLE `users` ( 
   `id` int(11) NOT NULL AUTO_INCREMENT, 
   `name` varchar(25), 
   `emailid` varchar(50), 
   `contactNumber` number 
   PRIMARY KEY (`id`) 
) 
ENGINE = InnoDB DEFAULT CHARSET = utf8; 

После создания таблицы ее структура выглядит так, как показано на следующем снимке экрана.

Таблица создана

Шаг 4 — Чтобы создать модель, связанную с таблицей «Пользователи», которую мы создали на предыдущем шаге, откройте экземпляр командной строки. Важно перенаправить на соответствующий путь проекта. Перед этим важно проверить, правильно ли настроена конфигурация базы данных, как показано на следующем снимке экрана.

пользователи

Шаг 5 — Используйте следующую команду для создания любой модели в платформе Phalcon.

phalcon model <model-name> 

Ниже приведены результаты выполнения вышеуказанной команды.

Результат

Это означает, что модель была успешно создана.

Шаг 6 — Модель, созданная успешно, присутствует в папке моделей. Используйте следующий путь, чтобы посмотреть, где создается модель.

C:\xampp\htdocs\demo1\app\models 

Ниже приведен полный код для Users.php .

<?php  

class Users extends \Phalcon\Mvc\Model {
   /**      
      *      
      * @var integer 
      * @Primary 
      * @Identity
      * @Column(type = "integer", length = 11, nullable = false)      
   */      

   public $id; 
   /**
      *
      * @var string
      * @Column(type = "string", length = 25, nullable = true)      
   */ 

   public $name; 
   /**
      *
      * @var string
      * @Column(type = "string", length = 50, nullable = true)
   */      

   public $emailid; 
   /**
      *
      * @var integer
      * @Column(type = "integer", length = 11, nullable = true)
   */      

   public $contactNumber; 
   /**
      * Returns table name mapped in the model.
      *
      * @return string
   */      

   public function getSource() {
      return 'users';
   }  
   /**
      * Allows to query a set of records that match the specified conditions
      *
      * @param mixed $parameters
      * @return Users[]
   */ 

   public static function find($parameters = null) { 
      return parent::find($parameters);
   }  
   /**
      * Allows to query the first record that match the specified conditions
      *
      * @param mixed $parameters
      * @return Users
   */   
   
   public static function findFirst($parameters = null) {
      return parent::findFirst($parameters);
   } 
}

Шаг 7 — Контроллер взаимодействует с моделью и представлением, чтобы получить необходимый вывод. Как и в модели, используйте следующий командный терминал для создания контроллера.

Phalcon controller <controller-name> 

При успешном выполнении вышеупомянутой команды следующий вывод.

Успешное выполнение

Ниже приведен код для UserController.php .

<?php  

class UsersController extends \Phalcon\Mvc\Controller { 
   public function indexAction() { 
      echo "Users Controller has been called"; 
   } 
}

Вывод будет отображаться, если мы нажмем следующий URL — http: // localhost / demo1 / users