Was ist der Unterschied zwischen model und activeRecord in yii2?
Nov 20, 2020 pm 03:57 PMDer Unterschied zwischen Model und ActiveRecord (AR) in Yii2 wird wie folgt analysiert:
(Verwandte Empfehlungen: yii)
1. Model
models ist ein Teil von MVC und repr?sentiert Gesch?ftsdaten, Regeln und logisches Objekt. Die Model-Klasse ist auch die Basisklasse für erweiterte Modelle wie Active Record. Standardm??ig erbt das Modell direkt von yiibaseModel.
namespace app\models; use yii\base\Model; class LoginForm extends Model { public $username; public $password; public function rules() { // 這里寫你的驗證規(guī)則 [['username', 'password'], 'required'], // password is validated by validatePassword() ['password', 'checkPassword'], // 驗證密碼 } // 這里寫你驗證密碼的邏輯 public function checkPassword($attribute,$params) { // ...... } // 這里寫登錄的邏輯 public function login() { // ...... } }Schauen wir uns den Controller-Code an:
namespace app\controllers; use Yii; use yii\web\Controller; class SiteController extends Controller { // ... public function actionLogin() { $model = new LoginForm(); // 根據(jù)用戶在登錄表單的輸入來做判斷 if ($model->load(Yii::$app->request->post()) && $model->login()) { return $this->goBack(); } } }2. ActiveRecord-Klasse Active Record (im Folgenden als AR bezeichnet) bietet eine objektorientierte Schnittstelle für den Zugriff auf Daten in der Datenbank. Eine ActiveRecord-Klasse ist einer Datentabelle zugeordnet, und die Attribute des Objekts (d. h. das Attributattribut von AR) werden den entsprechenden Spalten der Datenzeile zugeordnet. Ein Aktivit?tsdatensatz (AR-Objekt) entspricht einer Zeile der Datentabelle, und die Attribute des AR-Objekts bilden die entsprechenden Spalten der Zeile ab. 3. Die Beziehung zwischen Model und ActiveRecord-KlasseKann in yiidbActiveRecord.php
class ActiveRecord extends BaseActiveRecord { ... }gesehen werdenKann in yiidbBaseActiveRecord.php
abstract BaseActiveRecord extends Model implements ActiveRecordInterface { ... }gesehen werden
Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen model und activeRecord in yii2?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

TocreateabasicrouteinYii,firstsetupacontrollerbyplacingitinthecontrollersdirectorywithpropernamingandclassdefinitionextendingyii\web\Controller.1)Createanactionwithinthecontrollerbydefiningapublicmethodstartingwith"action".2)ConfigureURLstr

Ayiideveloper'Skeyresponsibilities includedesigningandImplementingFeatures, Sicherstellung von Anwendungen und optimierender Bildung

Die Methode zum Erstellen von benutzerdefinierten Operationen in YII besteht darin, eine gemeinsame Methode zu definieren, die mit einer Aktion im Controller beginnt, die optional Parameter akzeptieren. Verarbeiten Sie dann Daten, machen Sie Ansichten oder geben Sie JSON nach Bedarf zurück. und gew?hrleisten schlie?lich die Sicherheit durch Zugangskontrolle. Die spezifischen Schritte umfassen: 1. Erstellen einer mit Aktion vorangestellten Methode; 2. Setzen Sie die Methode auf die ?ffentlichkeit; 3. kann URL -Parameter empfangen; 4. Prozessdaten wie Abfrage des Modells, Verarbeitung von Postanforderungen, Umleitungen usw.; 5. AccessControl verwenden oder die Berechtigungen manuell überprüfen, um den Zugriff einzuschr?nken. Beispielsweise kann ActionProfile ($ ID) über /Site /Profil? ID = 123 zugegriffen werden und rendern die Benutzerprofilseite. Die beste Praxis ist

Touactiverecordininyiieffektiv, youcreateamodelClassforeachTableAnDinteracthEdatabaseSoBect-orientedMethods.First, DefineAmodelClassextendingyii \ db \ activerecordandSpecifytheCorresprespespectaNtableNameViatablename ()

Ayiidevelopercraftswebapplicationssusingtheyiiframework, Anforderungskillsinphp, yii-Specificknowledge und Webdevelopmentlifecyclemanagement.Keyres-ArsibilitiesInclude: 1) WritingEffictionCodetItimizeperance, 2) Vorbereitungsgr??e, Voraussetzungen, Voraussetzungen für Schreibungen, Voraussetzungen für Schreibungen, Voraussetzungen für Schreibungen, Voraussetzungen, die Bekanntmachung von Trübchen, die Bekanntmachung von Trübungen, und Sectaprotectapretectapretectaptectaptaprezieren, und

Das Aufzeichnen von Sicherheitsereignissen in YII kann durch Konfigurieren von Protokollzielen, Ausl?sen von Schlüsselereignisprotokollen, Berücksichtigung des Datenbankspeichers und zur Vermeidung der Aufzeichnung sensibler Informationen erreicht werden. Die spezifischen Schritte sind wie folgt: 1. Legen Sie ein dediziertes Protokollziel in der Konfigurationsdatei fest, z. B. Filetarget oder DBTarget, und geben Sie die Klassifizierung als ?Sicherheit“ an. 2. Verwenden Sie yii :: info () oder yii :: warning (), um das Protokoll aufzuzeichnen, wenn ein kritisches Sicherheitsereignis (z. B. Anmeldefehler und Kennwortreset) auftritt. 3. Speichern Sie die Protokolle optional in der Datenbank für Abfrage und Analyse, und Sie müssen zuerst eine Tabelle erstellen und die Protokollparameter konfigurieren. 4. Vermeiden Sie es, sensible Daten wie Kennw?rter oder Token bei der Aufzeichnung von Kontextinformationen einzubeziehen, und Sie k?nnen den Parameterersatz verwenden, um IP und Benutzername hinzuzufügen. 5

Die Verwendung von YIIs Assetbundles ist eine bew?hrte Verantwortung für die Verwaltung von CSS- und JS -Dateien. Es definiert Ressourcengruppen zentral über PHP -Klassen und behandelt automatisch Abh?ngigkeiten, Verschmelzungen und Caches. 1. Das Ressourcenpaket ist eine PHP -Klasse, mit der CSS, JS und andere Ressourcen organisiert und ihre Abh?ngigkeiten deklariert werden. 2. Registrieren Sie Ressourcenpakete in der Ansicht oder Layout, um automatisch HTML -Tags zu generieren. 3.. Verschiedene Ressourcenpakete k?nnen je nach Benutzerrolle oder Seitentyp bedingt registriert werden. 4. Die Ressourcendateien werden standardm??ig in Web/CSS und Web/JS platziert, und der Pfad kann angepasst werden. 5. Verwenden Sie die AssetManager -Konfiguration, um Zeitstempel hinzuzufügen, um die Versionskontrolle zu erreichen und Browser -Caching -Probleme zu l?sen. Die korrekte Verwendung von Ressourcenpaketen kann die Klarheit der Projektstruktur und die Belastungseffizienz verbessern

In YII koordiniert die Controller die Anwendungslogik durch Verarbeitung von Benutzeranforderungen, interaktiven Modellen und Rendering -Ansichten. Zu den Hauptaufgaben des Controllers geh?ren: ① Verarbeitung von HTTP -Anforderungen; ② mit dem Modell interagieren, um Daten zu erhalten oder zu speichern; ③ Entscheidung, welche Ansicht angezeigt und übergeben wird; ④ Einreichungen des Verarbeitungsformulars; ⑤ Rückgabe von HTML-, JSON- oder Umleitungsantworten. YII -Controller werden normalerweise von YII \ Web \ Controller geerbt, und jede ?ffentliche Methode entspricht einer Aktion, auf die über die URL zugegriffen werden kann. Beispielsweise wird die ActionIndex () -Methode von SiteController auf den Besuch http://example.com/site/index aufgerufen. Zu den allgemeinen Aufgaben z?hlen die überprüfung von Eingaben, Aufrufmodelle und Rendering
