Maison cadre php YII Créer un site Web de film en utilisant le framework Yii

Créer un site Web de film en utilisant le framework Yii

Jun 21, 2023 am 09:04 AM
创建 yii框架 电影网站

Avec la popularité d'Internet et l'amour des gens pour les films, les sites Web de films sont devenus un type de site Web populaire. Lors de la création d’un site Web de cinéma, un bon framework est indispensable. Le framework Yii est un framework PHP hautes performances, facile à utiliser et offrant d'excellentes performances. Dans cet article, nous explorerons comment créer un site Web de films à l'aide du framework Yii.

  1. Installer le framework Yii

Avant d'utiliser le framework Yii, vous devez d'abord installer le framework. L'installation du framework Yii est très simple, il suffit d'exécuter la commande suivante dans le terminal :

composer create-project yiisoft/yii2-app-basic
Copier après la connexion

Cette commande créera une application Yii2 de base dans le répertoire courant. Vous êtes maintenant prêt à commencer à créer votre site Web de film.

  1. Créer des bases de données et des tables

Le framework Yii fournit ActiveRecord, un moyen de faciliter le travail avec les bases de données. Dans cet exemple, nous allons créer une table de données appelée films, qui contient des informations telles que l'identifiant du film, le titre, le réalisateur, l'acteur, l'année, le genre et la note. Pour créer la table, accédez au répertoire racine de l'application dans le terminal et exécutez la commande suivante :

php yii migrate/create create_movies_table
Copier après la connexion

Modifiez ensuite le fichier de migration généré avec le contenu suivant :

<?php

use yiidbMigration;

/**
 * Handles the creation of table `{{%movies}}`.
 */
class m210630_050401_create_movies_table extends Migration
{
    /**
     * {@inheritdoc}
     */
    public function safeUp()
    {
        $this->createTable('{{%movies}}', [
            'id' => $this->primaryKey(),
            'title' => $this->string()->notNull(),
            'director' => $this->string()->notNull(),
            'actors' => $this->text()->notNull(),
            'year' => $this->integer()->notNull(),
            'genre' => $this->string()->notNull(),
            'rating' => $this->decimal(3,1)->notNull(),
        ]);
    }

    /**
     * {@inheritdoc}
     */
    public function safeDown()
    {
        $this->dropTable('{{%movies}}');
    }
}
Copier après la connexion

Exécutez maintenant la migration pour créer la table de données des films.

php yii migrate
Copier après la connexion
  1. Créer un modèle de film

Dans le framework Yii, il est très simple de définir le modèle de la table de données à l'aide d'ActiveRecord. Nous pouvons créer un modèle nommé Movie dans le répertoire models et spécifier le nom de la table et le nom du champ dans la définition du modèle.

<?php

namespace appmodels;

use yiidbActiveRecord;

class Movie extends ActiveRecord
{
    /**
     * {@inheritdoc}
     */
    public static function tableName()
    {
        return '{{%movies}}';
    }

    /**
     * {@inheritdoc}
     */
    public function rules()
    {
        return [
            [['title', 'director', 'actors', 'year', 'genre', 'rating'], 'required'],
            [['year'], 'integer'],
            [['rating'], 'number'],
            [['actors'], 'string'],
            [['title', 'director', 'genre'], 'string', 'max' => 255],
        ];
    }

    /**
    * {@inheritdoc}
    */
    public function attributeLabels()
    {
        return [
            'id' => 'ID',
            'title' => 'Title',
            'director' => 'Director',
            'actors' => 'Actors',
            'year' => 'Year',
            'genre' => 'Genre',
            'rating' => 'Rating'
        ];
    }
}
Copier après la connexion
  1. Créer un contrôleur de film

Le contrôleur de film sera responsable du traitement de toutes les demandes concernant les films, telles que les demandes d'ajout, de modification, de suppression et d'affichage de la liste de films. Nous pouvons créer un contrôleur nommé MovieController dans le répertoire des contrôleurs et ajouter le code suivant :

<?php

namespace appcontrollers;

use Yii;
use yiiwebController;
use appmodelsMovie;

class MovieController extends Controller
{
    /**
     * Shows all movies.
     *
     * @return string
     */
    public function actionIndex()
    {
        $movies = Movie::find()->all();
        return $this->render('index', ['movies' => $movies]);
    }

    /**
     * Creates a new movie.
     *
     * @return string|yiiwebResponse
     */
    public function actionCreate()
    {
        $model = new Movie();

        if ($model->load(Yii::$app->request->post()) && $model->save()) {
            return $this->redirect(['index']);
        }

        return $this->render('create', [
            'model' => $model,
        ]);
    }

    /**
     * Updates an existing movie.
     *
     * @param integer $id
     * @return string|yiiwebResponse
     * @throws yiiwebNotFoundHttpException
     */
    public function actionUpdate($id)
    {
        $model = $this->findModel($id);

        if ($model->load(Yii::$app->request->post()) && $model->save()) {
            return $this->redirect(['index']);
        }

        return $this->render('update', [
            'model' => $model,
        ]);
    }

    /**
     * Deletes an existing movie.
     *
     * @param integer $id
     * @return yiiwebResponse
     * @throws yiiwebNotFoundHttpException
     */
    public function actionDelete($id)
    {
        $this->findModel($id)->delete();

        return $this->redirect(['index']);
    }

    /**
     * Finds the Movie model based on its primary key value.
     * If the model is not found, a 404 HTTP exception will be thrown.
     *
     * @param integer $id
     * @return ppmodelsMovie
     * @throws NotFoundHttpException if the model cannot be found
     */
    protected function findModel($id)
    {
        if (($model = Movie::findOne($id)) !== null) {
            return $model;
        }

        throw new NotFoundHttpException('The requested page does not exist.');
    }
}
Copier après la connexion

Parmi eux, la méthode actionIndex affichera la liste de tous les films, les méthodes actionCreate et actionUpdate seront utilisées pour créer et éditer des films, et le La méthode actionDelete supprimera le film.

  1. Créer une vue de film

Ensuite, nous devons créer le fichier de vue pour afficher la liste des films, ajouter un film et modifier les formulaires de film. Stockez les fichiers de vue dans le répertoire vues/movie.

  • index.php - pour afficher la liste des films
<?php

use yiihelpersHtml;
use yiigridGridView;

/* @var $this yiiwebView */
/* @var $movies appmodelsMovie[] */

$this->title = 'Movies';
$this->params['breadcrumbs'][] = $this->title;
?>

<h1><?= Html::encode($this->title) ?></h1>

<p>
    <?= Html::a('Create Movie', ['create'], ['class' => 'btn btn-success']) ?>
</p>

<?= GridView::widget([
    'dataProvider' => new yiidataArrayDataProvider([
        'allModels' => $movies,
        'sort' => [
            'attributes' => [
                'title',
                'director',
                'year',
                'genre',
                'rating',
            ],
        ],
    ]),
    'columns' => [
        ['class' => 'yiigridSerialColumn'],

        'title',
        'director',
        'actors:ntext',
        'year',
        'genre',
        'rating',

        ['class' => 'yiigridActionColumn'],
    ],
]); ?>
Copier après la connexion
  • create.php - pour créer de nouveaux films
<?php

use yiihelpersHtml;
use yiiwidgetsActiveForm;

/* @var $this yiiwebView */
/* @var $model appmodelsMovie */

$this->title = 'Create Movie';
$this->params['breadcrumbs'][] = ['label' => 'Movies', 'url' => ['index']];
$this->params['breadcrumbs'][] = $this->title;
?>
<h1><?= Html::encode($this->title) ?></h1>

<div class="movie-form">

    <?php $form = ActiveForm::begin(); ?>

    <?= $form->field($model, 'title')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'director')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'actors')->textarea(['rows' => 6]) ?>

    <?= $form->field($model, 'year')->textInput() ?>

    <?= $form->field($model, 'genre')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'rating')->textInput() ?>

    <div class="form-group">
        <?= Html::submitButton('Save', ['class' => 'btn btn-success']) ?>
    </div>

    <?php ActiveForm::end(); ?>

</div>
Copier après la connexion
  • update.php - pour éditer des films
<?php

use yiihelpersHtml;
use yiiwidgetsActiveForm;

/* @var $this yiiwebView */
/* @var $model appmodelsMovie */

$this->title = 'Update Movie: ' . $model->title;
$this->params['breadcrumbs'][] = ['label' => 'Movies', 'url' => ['index']];
$this->params['breadcrumbs'][] = ['label' => $model->title, 'url' => ['view', 'id' => $model->id]];
$this->params['breadcrumbs'][] = 'Update';
?>
<h1><?= Html::encode($this->title) ?></h1>

<div class="movie-form">

    <?php $form = ActiveForm::begin(); ?>

    <?= $form->field($model, 'title')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'director')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'actors')->textarea(['rows' => 6]) ?>

    <?= $form->field($model, 'year')->textInput() ?>

    <?= $form->field($model, 'genre')->textInput(['maxlength' => true]) ?>

    <?= $form->field($model, 'rating')->textInput() ?>

    <div class="form-group">
        <?= Html::submitButton('Save', ['class' => 'btn btn-primary']) ?>
    </div>

    <?php ActiveForm::end(); ?>

</div>
Copier après la connexion
  1. exécuter un site Web de films

Maintenant, nous avons j'ai fini de créer le site Web du film Yii framework et tout le code est en place. Pour exécuter un site Web de film localement, accédez au répertoire racine de l'application dans le terminal et exécutez la commande suivante :

php yii serve
Copier après la connexion

Cela démarrera un serveur Web local et exécutera votre application sur le port 8000. Maintenant, vous pouvez ouvrir http://localhost:8000/ dans votre navigateur et voir le site Web de votre film.

Dans cet article, nous avons montré comment créer un site Web de film à l'aide du framework Yii. L'utilisation du framework Yii accélérera votre développement et fournira de nombreuses fonctionnalités utiles, telles qu'ActiveRecord, l'architecture MVC, la validation de formulaire, la sécurité, etc. Pour en savoir plus sur le framework Yii, consultez sa documentation.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment créer une constante en Python ? Comment créer une constante en Python ? Aug 29, 2023 pm 05:17 PM

Les constantes et les variables sont utilisées pour stocker les valeurs des données dans la programmation. Une variable fait généralement référence à une valeur qui peut changer dans le temps. Une constante est un type de variable dont la valeur ne peut pas être modifiée lors de l'exécution du programme. Il n'y a que six constantes intégrées disponibles en Python, elles sont False, True, None, NotImplemented, Ellipsis(...) et __debug__. Hormis ces constantes, Python ne dispose d'aucun type de données intégré pour stocker des valeurs constantes. Exemple Un exemple de constante est illustré ci-dessous - False=100 sorties SyntaxError:cannotassigntoFalseFalse est une constante intégrée en Python utilisée pour stocker des valeurs booléennes.

Comment personnaliser votre iPhone sur le dernier iOS 17 Comment personnaliser votre iPhone sur le dernier iOS 17 Sep 21, 2023 am 08:17 AM

Comment personnaliser les appels sur iPhone L'iOS 17 d'Apple introduit une nouvelle fonctionnalité appelée Affiches de contact qui vous permet de personnaliser l'apparence de votre écran d'appel sur votre iPhone. Cette fonctionnalité vous permet de concevoir une affiche en utilisant des photos, des couleurs, des polices et des Memoji sélectionnés comme cartes de contact. Ainsi, lorsque vous passez un appel, votre image personnalisée apparaîtra sur l'iPhone du destinataire exactement comme vous l'aviez imaginé. Vous pouvez choisir de partager votre affiche de contact unique avec tous vos contacts enregistrés ou choisir qui peut la voir. De même, lors d’un échange d’appels, vous verrez également les affiches de contact d’autres personnes. De plus, Apple vous permet de définir des photos de contact spécifiques pour des contacts individuels, en passant des appels à partir de ces contacts.

Comment créer un dossier sur Realme Phone ? Comment créer un dossier sur Realme Phone ? Mar 23, 2024 pm 02:30 PM

Titre : Guide du débutant Realme Phone : Comment créer des dossiers sur Realme Phone ? Dans la société actuelle, les téléphones portables sont devenus un outil indispensable dans la vie des gens. En tant que marque de smartphones populaire, RealMobile est appréciée des utilisateurs pour son système d'exploitation simple et pratique. Lors de l'utilisation des téléphones Realme, de nombreuses personnes peuvent être confrontées au besoin d'organiser des fichiers et des applications sur le téléphone, et la création de dossiers est un moyen efficace. Cet article explique comment créer des dossiers sur les téléphones Realme pour aider les utilisateurs à mieux gérer le contenu de leur téléphone. Non.

Comment créer du pixel art dans GIMP Comment créer du pixel art dans GIMP Feb 19, 2024 pm 03:24 PM

Cet article vous intéressera si vous souhaitez utiliser GIMP pour la création de pixel art sous Windows. GIMP est un logiciel d'édition graphique bien connu qui est non seulement gratuit et open source, mais qui aide également les utilisateurs à créer facilement de belles images et de superbes designs. En plus de convenir aussi bien aux concepteurs débutants qu'aux professionnels, GIMP peut également être utilisé pour créer du pixel art, une forme d'art numérique qui utilise les pixels comme seuls éléments de base pour dessiner et créer. Comment créer du pixel art dans GIMP Voici les principales étapes pour créer des images pixel à l'aide de GIMP sur un PC Windows : Téléchargez et installez GIMP, puis lancez l'application. Créez une nouvelle image. Redimensionnez la largeur et la hauteur. Sélectionnez l'outil Crayon. Définissez le type de pinceau sur pixels. installation

Comment créer une famille avec Gree+ Comment créer une famille avec Gree+ Mar 01, 2024 pm 12:40 PM

De nombreux amis ont exprimé leur souhait de savoir comment créer une famille dans le logiciel Gree+. Voici la méthode de fonctionnement pour vous. Amis qui veulent en savoir plus, venez jeter un œil avec moi. Tout d’abord, ouvrez le logiciel Gree+ sur votre téléphone mobile et connectez-vous. Ensuite, dans la barre d'options en bas de la page, cliquez sur l'option « Mon » à l'extrême droite pour accéder à la page du compte personnel. 2. Après être arrivé sur ma page, il y a une option « Créer une famille » sous « Famille ». Après l'avoir trouvée, cliquez dessus pour entrer. 3. Accédez ensuite à la page pour créer une famille, entrez le nom de famille à définir dans la zone de saisie en fonction des invites, puis cliquez sur le bouton « Enregistrer » dans le coin supérieur droit après l'avoir saisi. 4. Enfin, une invite « enregistrement réussi » apparaîtra au bas de la page, indiquant que la famille a été créée avec succès.

Comment créer un diagramme de Gantt à l'aide de Highcharts Comment créer un diagramme de Gantt à l'aide de Highcharts Dec 17, 2023 pm 07:23 PM

Comment utiliser Highcharts pour créer un diagramme de Gantt nécessite des exemples de code spécifiques. Introduction : Le diagramme de Gantt est un formulaire de diagramme couramment utilisé pour afficher la progression du projet et la gestion du temps. Il peut afficher visuellement l'heure de début, l'heure de fin et la progression de la tâche. Highcharts est une puissante bibliothèque de graphiques JavaScript qui fournit des types de graphiques riches et des options de configuration flexibles. Cet article explique comment utiliser Highcharts pour créer un diagramme de Gantt et donne des exemples de code spécifiques. 1. Tableau haut

Un premier aperçu de Django : créez votre premier projet Django en utilisant la ligne de commande Un premier aperçu de Django : créez votre premier projet Django en utilisant la ligne de commande Feb 19, 2024 am 09:56 AM

Commencez le parcours du projet Django : démarrez à partir de la ligne de commande et créez votre premier projet Django. Django est un framework d'application Web puissant et flexible. Il est basé sur Python et fournit de nombreux outils et fonctions nécessaires au développement d'applications Web. Cet article vous amènera à créer votre premier projet Django à partir de la ligne de commande. Avant de commencer, assurez-vous que Python et Django sont installés. Étape 1 : Créer le répertoire du projet Tout d'abord, ouvrez la fenêtre de ligne de commande et créez un nouveau répertoire

Comment créer une affiche de contact pour votre iPhone Comment créer une affiche de contact pour votre iPhone Mar 02, 2024 am 11:30 AM

Dans iOS17, Apple a ajouté une fonctionnalité d'affichage de contacts à ses applications Téléphone et Contacts couramment utilisées. Cette fonctionnalité permet aux utilisateurs de définir des affiches personnalisées pour chaque contact, rendant le carnet d'adresses plus visuel et personnel. Les affiches de contact peuvent aider les utilisateurs à identifier et à localiser des contacts spécifiques plus rapidement, améliorant ainsi l'expérience utilisateur. Grâce à cette fonctionnalité, les utilisateurs peuvent ajouter des images ou des logos spécifiques à chaque contact en fonction de leurs préférences et de leurs besoins, ce qui rend l'interface du carnet d'adresses plus vivante. Apple dans iOS17 offre aux utilisateurs d'iPhone une nouvelle façon de s'exprimer et ajoute une affiche de contact personnalisable. La fonction Contact Poster vous permet d'afficher un contenu unique et personnalisé lorsque vous appelez d'autres utilisateurs d'iPhone. toi

See all articles