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; 

创建表后,其结构如下面的屏幕截图所示。

Table Created

步骤 4 - 要创建与我们在上一步中创建的“Users”表关联的模型,请打开命令提示符实例。必须重定向到相应的项目路径。在此之前,至关重要的是要检查数据库配置是否已正确设置,如下面的屏幕截图所示。

users

步骤 5 - 使用以下命令在 Phalcon 框架中创建任何模型。

phalcon model <model-name> 

以下是执行上述命令后的输出。

Result

这意味着模型已成功创建。

步骤 6 - 成功创建的模型位于 models 文件夹中。使用以下路径查看模型的创建位置。

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> 

成功执行上述命令后,输出如下。

Sucessful Execution

以下是UserController.php的代码。

<?php  

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

如果我们访问以下 URL,将显示输出 - https://127.0.0.1/demo1/users

demo1 Window
广告