Rumah  >  Soal Jawab  >  teks badan

Laravel PHP Artisan: Tiada lajur jadual sepadan ditemui - akses baca sahaja

Saya sedang membangunkan web menggunakan Laravel 9. Saya menggunakan arahan sail php make:migration add_bought_to_products_table 在产品表中添加一个名为“bought”的布尔列。当尝试使用 Eloquent 帮助程序修改值时 (Product::where('id', $product->id)->update(array('bought'=>true)) Nilai dalam pangkalan data tidak dikemas kini < /strong> Apabila melihatnya, saya mendapati medan baharu "Pembelian" yang dibuat oleh penghijrahan telah ditandakan Baca Sahaja: Tiada lajur jadual yang sepadan .

Kod migrasi adalah seperti berikut:

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

return new class extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('products', function (Blueprint $table) {
            $table->boolean('bought');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('products', function (Blueprint $table) {
            $table->dropColumn('bought');
        });
    }
};

Berikut ialah tangkapan skrin pangkalan data:

Saya telah mencuba beberapa kali untuk membersihkan cache dan membina semula pangkalan data serta melancarkan semula dan berhijrah semula. Perkara yang aneh ialah, saya telah menambah medan "keterlihatan" sebelum ini dan ia berfungsi dengan sempurna menggunakan kod dan langkah yang sama seperti medan yang dimaksudkan.

Bagaimana untuk menyelesaikannya?

P粉547362845P粉547362845260 hari yang lalu424

membalas semua(2)saya akan balas

  • P粉546257913

    P粉5462579132024-02-26 11:43:04

    Saya baru sahaja memulakan semula alat pangkalan data saya dan ia hilang.

    balas
    0
  • P粉504920992

    P粉5049209922024-02-26 00:01:36

    Selepas memerah otak, saya menyelesaikan masalah dengan hanya memulakan semula bekas docker. Nampaknya isu ini tiada kaitan dengan Laravel, tetapi dengan Docker!

    Untuk sesiapa yang menghadapi masalah yang sama: Pastikan untuk menamatkan Docker dan semua bekas dan mulakan semula.

    balas
    0
  • Batalbalas