Phalcon - Modelle

Das Modell in der MVC-Architektur enthält die Logik der Anwendung. Modell ist die Kerninteraktion mit der Datenbank. Es sollte in der Lage sein, das Aktualisieren, Löschen, Einfügen und Abrufen von Datensätzen gemäß den Anforderungen des Benutzers zu verwalten.

Um die Modellinteraktion im Phalcon PHP-Framework zu verstehen, sollten die folgenden Schritte ausgeführt werden.

Step 1 - Erstellung einer Datenbank.

Für jeden LAMP, WAMP, XAMPP Software-Stack ist es ganz einfach, mit Hilfe von eine Datenbank zu erstellen phpmyadmin Datenbank-Tool.

Es folgt die SQL-Abfrage zum Erstellen einer Datenbank.

create database <database-name>

Step 2 - In der phpmyadmin Klicken Sie im Abschnitt auf die Registerkarte Datenbanken, geben Sie den Datenbanknamen an und klicken Sie weiter auf die Schaltfläche Erstellen, wie im folgenden Screenshot gezeigt.

Step 3 - Wenn die Datenbank erfolgreich erstellt wurde, erstellen Sie eine Tabelle, die die Zuordnung zum Erstellen eines Modells im Phalcon-Framework erleichtert.

Verwenden Sie die folgende Abfrage, um eine neue Tabelle mit dem Namen "Benutzer" zu erstellen.

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;

Sobald die Tabelle erstellt wurde, sieht ihre Struktur wie im folgenden Screenshot gezeigt aus.

Step 4- Um ein Modell zu erstellen, das der Tabelle 'Benutzer' zugeordnet ist, die wir im obigen Schritt erstellt haben, öffnen Sie die Eingabeaufforderungsinstanz. Es ist wichtig, zum entsprechenden Projektpfad umzuleiten. Zuvor ist es wichtig zu überprüfen, ob die Datenbankkonfiguration korrekt eingestellt wurde, wie im folgenden Screenshot gezeigt.

Step 5 - Verwenden Sie den folgenden Befehl, um ein Modell im Phalcon-Framework zu erstellen.

phalcon model <model-name>

Es folgt die Ausgabe bei Ausführung des obigen Befehls.

Dies bedeutet, dass das Modell erfolgreich erstellt wurde.

Step 6- Das erfolgreich erstellte Modell befindet sich im Modellordner. Verwenden Sie den folgenden Pfad, um anzuzeigen, wo das Modell erstellt wird.

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

Es folgt der vollständige Code für 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);
   } 
}

Step 7- Der Controller interagiert mit dem Modell und der Ansicht, um die erforderliche Ausgabe zu erhalten. Verwenden Sie wie beim Modell das folgende Befehlsterminal, um eine Steuerung zu erstellen.

Phalcon controller <controller-name>

Nach erfolgreicher Ausführung des obigen Befehls folgt die Ausgabe.

Es folgt der Code für UserController.php.

<?php  

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

Die Ausgabe wird angezeigt, wenn wir die folgende URL drücken - http://localhost/demo1/users