cari
Rumahrangka kerja phpLaravelPembangunan Laravel: Bagaimana untuk menggunakan Laravel Nova untuk operasi CRUD?

Laravel ialah salah satu rangka kerja PHP paling popular hari ini, menyediakan fungsi yang kaya dan pengalaman pembangunan yang mudah. Laravel Nova ialah pembina antara muka pentadbir yang direka khusus untuk aplikasi Laravel, membantu anda membuat dan mengurus panel pentadbir bahagian belakang dengan lebih mudah. Dalam artikel ini, kita akan melihat cara menggunakan Laravel Nova untuk operasi CRUD.

Apakah operasi CRUD?

CRUD ialah singkatan kepada "Buat, Baca, Kemas Kini dan Padam". Empat operasi ini adalah fungsi asas mana-mana aplikasi. Melalui operasi CRUD, anda boleh melaksanakan operasi asas seperti menambah, bertanya, mengemas kini dan memadam data dalam pangkalan data. Dalam rangka kerja Laravel, kita boleh menggunakan Eloquent ORM untuk melaksanakan operasi ini dengan mudah. Walau bagaimanapun, jika anda mahukan panel pentadbir yang lebih mesra pengguna, Laravel Nova mempunyai penyelesaian yang hebat untuk anda.

Pasang Laravel Nova

Sebelum menggunakan Laravel Nova, kita perlu memasangnya terlebih dahulu. Laravel Nova ialah produk komersial dan secara rasminya menyediakan tempoh percubaan percuma selama 30 hari. Jika anda ingin mencubanya, anda boleh pergi ke https://nova.laravel.com/ untuk membuat akaun dan mendapatkan lesen percubaan.

Setelah pemasangan selesai, kami boleh menambah Nova pada aplikasi Laravel kami. Anda boleh menggunakan komposer untuk menyelesaikan proses ini, hanya pergi ke folder projek anda dalam konsol dan jalankan arahan berikut:

composer require laravel/nova

Selain itu, anda juga perlu mendaftarkan pembekal perkhidmatan Nova. Dalam fail config/app.php, cari tatasusunan penyedia dan tambah kod berikut:

LaravelNovaNovaServiceProvider::class,

Selepas menjalankan arahan di atas, anda perlu menjalankan arahan berikut:

php artisan nova:install

Perintah ini akan berikan aplikasi anda Program ini menjana fail konfigurasi Nova dan direktori sumber. Anda juga perlu menerbitkan fail CSS dan JavaScript Nova ke direktori awam/vendor/nova menggunakan arahan Nova publish:

php artisan vendor:publish --tag=nova-assets

Seterusnya, anda juga perlu menyediakan pemacu dalam fail auth.php dalam sesi folder konfigurasi untuk membolehkan sistem pengesahan Nova berfungsi dengan betul:

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],
],

Akhir sekali, anda juga perlu menjalankan arahan berikut untuk menjana laluan dan jadual pengesahan untuk Nova:

php artisan nova:install

Pada ketika ini , kami telah menyelesaikan kerja pemasangan dan konfigurasi Laravel Nova.

Menggunakan Laravel Nova untuk operasi CRUD

Seterusnya, kita akan melihat cara menggunakan Laravel Nova untuk operasi CRUD. Kita akan mulakan dengan contoh mudah, mari buat aplikasi blog baru menggunakan Laravel Nova, dalam aplikasi ini kita akan dapat membuat, melihat, mengemas kini dan memadam catatan blog.

1. Cipta model dan migrasi pangkalan data

Pertama, kita perlu mencipta model baharu dan migrasi pangkalan data. Kami akan menggunakan alat baris arahan Artisan Laravel untuk menyelesaikan proses ini. Dalam konsol, tukar ke folder projek anda dan taip perintah berikut:

php artisan make:model Blog -m

Perintah ini akan mencipta model baharu bernama Blog dan juga menjana fail migrasi pangkalan data baharu bernama create_blogs_table.

Sekarang, kita perlu mentakrifkan skema jadual "blog" kami dalam fail pemindahan pangkalan data. Cari fail ini dalam direktori pangkalan data/migrasi dan bukanya. Anda akan melihat kod seperti ini:

public function up()
{
    Schema::create('blogs', function (Blueprint $table) {
        $table->id();
        $table->timestamps();
    });
}

public function down()
{
    Schema::dropIfExists('blogs');
}

Dalam contoh ini, kami hanya menentukan medan id dan cap masa. Anda boleh melaraskan dan menambah medan lain mengikut keperluan anda. Jalankan pemindahan pangkalan data selepas selesai:

php artisan migrate

2. Tentukan model sumber

Seterusnya, kita perlu mentakrifkan model sumber. Model sumber ialah jambatan antara model Laravel Nova dan Eloquent. Kami mentakrifkan model sumber untuk memberitahu Laravel Nova jadual pangkalan data yang akan dikaitkan dengannya. Untuk mencipta model sumber, taip perintah berikut:

php artisan nova:resource Blog

Perintah ini akan mencipta fail baharu bernama Blog.php dalam direktori app/Nova. Sebaik sahaja anda membuka fail ini, anda akan melihat kod berikut:

<?php

namespace AppNova;

use IlluminateHttpRequest;
use LaravelNovaFieldsID;
use LaravelNovaFieldsText;
use LaravelNovaFieldsNumber;
use LaravelNovaHttpRequestsNovaRequest;

class Blog extends Resource
{
    /**
     * The model the resource corresponds to.
     *
     * @var string
     */
    public static $model = '';

    /**
     * The single value that should be used to represent the resource when being displayed.
     *
     * @var string
     */
    public static $title = 'id';

    /**
     * The columns that should be searched.
     *
     * @var array
     */
    public static $search = [];

    /**
     * Get the fields displayed by the resource.
     *
     * @param  IlluminateHttpRequest  $request
     * @return array
     */
    public function fields(Request $request)
    {
        return [
            ID::make()->sortable(),

            Text::make('Title')->sortable(),

            Number::make('Views')->sortable(),

            Text::make('Content')->hideFromIndex(),
        ];
    }

    /**
     * Get the cards available for the request.
     *
     * @param  IlluminateHttpRequest  $request
     * @return array
     */
    public function cards(Request $request)
    {
        return [];
    }

    /**
     * Get the filters available for the resource.
     *
     * @param  IlluminateHttpRequest  $request
     * @return array
     */
    public function filters(Request $request)
    {
        return [];
    }

    /**
     * Get the lenses available for the resource.
     *
     * @param  IlluminateHttpRequest  $request
     * @return array
     */
    public function lenses(Request $request)
    {
        return [];
    }

    /**
     * Get the actions available for the resource.
     *
     * @param  IlluminateHttpRequest  $request
     * @return array
     */
    public function actions(Request $request)
    {
        return [];
    }
}

Dalam fail ini, kami mentakrifkan model sumber baharu yang dipanggil Blog. Sekarang kita perlu mengaitkan model ini dengan model Laravel. Anda hanya perlu membuka fail model dan tambahkan kod berikut pada bahagian atas:

namespace App;

use IlluminateDatabaseEloquentModel;

class Blog extends Model
{
    //
}

3. Sambungkan sumber kepada nova

Sekarang, kita perlu menyambungkan sumber Blog ke Laravel Nova. Untuk melakukan ini, anda boleh membuka fail app/Nova/NovaServiceProvider.php dan tambahkan yang berikut pada kaedah butnya:

use AppNovaBlog;

// ...

public function boot()
{
    // ...

    Nova::resources([
        Blog::class,
    ]);
}

Kini setelah kami berjaya mengkonfigurasi Laravel Nova, kami boleh memasukkan aplikasi dan melihat apa itu suka.

4. Lakukan operasi CRUD

Kini, kami telah berjaya menyediakan Laravel Nova dan menghubungkan sumber Blog kami dengannya. Kami boleh mengakses panel pentadbir dan mula melakukan operasi CRUD.

Jalankan arahan berikut dalam konsol untuk memulakan pelayan pembangunan setempat:

php artisan serve

Kemudian, buka url http://localhost:8000/nova dan anda akan melihat halaman log masuk. Log masuk menggunakan akaun sedia ada dalam aplikasi Laravel anda.

Kini anda boleh klik pada menu lungsur "Sumber" pada menu atas dan pilih Blog. Di sini anda akan melihat senarai blog kosong.

Kami boleh mencipta, membaca, mengemas kini dan memadam catatan blog menggunakan Laravel Nova. Anda boleh mengklik butang "Blog Baru" di sudut kanan atas halaman dan masukkan data. Setiap kali catatan blog baharu ditambahkan, senarai akan dikemas kini secara automatik untuk menunjukkan data terkini.

Anda boleh memasukkan mod paparan dan edit dengan mengklik pada nama catatan blog untuk melakukan tindakan lain, seperti mengemas kini atau memadamkan catatan blog. Selain itu, anda boleh menggunakan ciri Penapis untuk mencari catatan blog tertentu dengan cepat dan ciri Carian untuk mencari kata kunci merentas semua catatan blog.

Ringkasan

Dengan menggunakan Laravel Nova, kami boleh membuat dan mengurus panel pentadbir bahagian belakang aplikasi Laravel dengan mudah. Dalam tutorial ini, kami belajar cara membina aplikasi CRUD mudah menggunakan Laravel Nova. Anda boleh menggunakan kaedah yang serupa dalam projek sebenar dan menguasai ciri Laravel Nova yang lebih maju untuk melaksanakan aplikasi yang lebih kompleks.

Atas ialah kandungan terperinci Pembangunan Laravel: Bagaimana untuk menggunakan Laravel Nova untuk operasi CRUD?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Laravel (PHP) vs Python: Persekitaran Pembangunan dan EkosistemLaravel (PHP) vs Python: Persekitaran Pembangunan dan EkosistemApr 12, 2025 am 12:10 AM

Perbandingan antara Laravel dan Python dalam persekitaran pembangunan dan ekosistem adalah seperti berikut: 1. Persekitaran pembangunan Laravel adalah mudah, hanya PHP dan komposer diperlukan. Ia menyediakan pelbagai pakej lanjutan seperti Laravelforge, tetapi penyelenggaraan pakej lanjutan mungkin tidak tepat pada masanya. 2. Persekitaran pembangunan Python juga mudah, hanya Python dan PIP diperlukan. Ekosistem adalah besar dan meliputi pelbagai bidang, tetapi pengurusan versi dan pergantungan mungkin kompleks.

Laravel dan backend: Powering Web Application LogicLaravel dan backend: Powering Web Application LogicApr 11, 2025 am 11:29 AM

Bagaimanakah Laravel memainkan peranan dalam logik backend? Ia memudahkan dan meningkatkan pembangunan backend melalui sistem penghalaan, eloquentorm, pengesahan dan kebenaran, acara dan pendengar, dan pengoptimuman prestasi. 1. Sistem penghalaan membolehkan definisi struktur URL dan logik pemprosesan permintaan. 2.eloquentorm memudahkan interaksi pangkalan data. 3. Sistem pengesahan dan kebenaran adalah mudah untuk pengurusan pengguna. 4. Acara dan pendengar melaksanakan struktur kod yang ditambah dengan longgar. 5. Pengoptimuman prestasi meningkatkan kecekapan aplikasi melalui caching dan beratur.

Mengapa Laravel begitu popular?Mengapa Laravel begitu popular?Apr 02, 2025 pm 02:16 PM

Populariti Laravel termasuk proses pembangunan mudahnya, menyediakan persekitaran pembangunan yang menyenangkan, dan ciri -ciri yang kaya. 1) Ia menyerap falsafah reka bentuk Rubyonrails, menggabungkan fleksibiliti PHP. 2) Menyediakan alat seperti eloquentorm, enjin templat bilah, dan lain -lain untuk meningkatkan kecekapan pembangunan. 3) Mekanisme suntikan seni bina dan ketergantungan MVC menjadikan kod lebih modular dan boleh diuji. 4) Menyediakan alat debugging yang kuat dan kaedah pengoptimuman prestasi seperti sistem caching dan amalan terbaik.

Mana yang lebih baik, Django atau Laravel?Mana yang lebih baik, Django atau Laravel?Mar 28, 2025 am 10:41 AM

Kedua-dua Django dan Laravel adalah kerangka kerja penuh. Django sesuai untuk pemaju python dan logik perniagaan yang kompleks, manakala Laravel sesuai untuk pemaju PHP dan sintaks elegan. 1.Django didasarkan pada python dan mengikuti falsafah "lengkap bateri", sesuai untuk perkembangan pesat dan kesesuaian yang tinggi. 2. Laravel didasarkan pada PHP, menekankan pengalaman pemaju, dan sesuai untuk projek kecil dan sederhana.

PHP atau Laravel mana yang lebih baik?PHP atau Laravel mana yang lebih baik?Mar 27, 2025 pm 05:31 PM

PHP dan Laravel tidak dapat dibandingkan secara langsung, kerana Laravel adalah rangka kerja berasaskan PHP. 1.Php sesuai untuk projek kecil atau prototaip cepat kerana ia mudah dan langsung. 2. Laravel sesuai untuk projek besar atau pembangunan yang cekap kerana ia menyediakan fungsi dan alat yang kaya, tetapi mempunyai lengkung pembelajaran yang curam dan mungkin tidak sebaik php tulen.

Adakah Laravel adalah frontend atau backend?Adakah Laravel adalah frontend atau backend?Mar 27, 2025 pm 05:31 PM

LaravelisabackendFramWorkBuiltonPHP, Direka ForweBapplicationDevelopment.itfocusesonServer-Sidelogic, DatabaseManagement, andApplications Structure, andCanbeIntegratedWithFrontendTechnologiesLikeVue.jsorreactorfull-stackdevelopment.

Bagaimana saya membuat dan menggunakan arahan pisau tersuai di laravel?Bagaimana saya membuat dan menggunakan arahan pisau tersuai di laravel?Mar 17, 2025 pm 02:50 PM

Artikel ini membincangkan membuat dan menggunakan arahan pisau tersuai di Laravel untuk meningkatkan templat. Ia meliputi arahan yang menentukan, menggunakannya dalam templat, dan menguruskannya dalam projek besar, menonjolkan manfaat seperti kebolehgunaan semula kod yang lebih baik dan r yang lebih baik dan r

Bagaimana saya menggunakan komponen Laravel untuk mencipta elemen UI yang boleh diguna semula?Bagaimana saya menggunakan komponen Laravel untuk mencipta elemen UI yang boleh diguna semula?Mar 17, 2025 pm 02:47 PM

Artikel ini membincangkan membuat dan menyesuaikan elemen UI yang boleh diguna semula di Laravel menggunakan komponen, menawarkan amalan terbaik untuk organisasi dan mencadangkan peningkatan pakej.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini