Laravel对于主键值返回零

Mut*_*thu 0 laravel laravel-5

我在这个laravel插入代码中遇到问题。每当创建新公司时,我都会获得与Company创建时一样的输出,但company_name为0。我不知道为什么会这样。我的代码是

控制器:

public function store(Request $request)
    {

        $Company = new Company([
            'company_name' => $request->input('company_name'),
            'head'=>$request->input('head'),
            'Email'=>$request->input('email'),
            'address'=>$request->input('address'),
            'phno'=>$request->input('phno'),
            'contact_person'=>$request->input('contact_person')

        ]);
        if ($Company->save()) {

            $response = [
                'msg' => 'Company Created',
                'Company' => $Company
            ];
            return response()->json($response, 201);
        }
        $response = [
            'msg' => 'An Error Occurred',
        ];
        return response()->json($response, 502);
    }
Run Code Online (Sandbox Code Playgroud)

我的模型代码是:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Company extends Model
{
    //
    protected $table = 'companies';
    public $timestamps = false;
    protected $primaryKey = 'company_name';
    protected $fillable = ['company_name','head','contact_person','phno','email','address'];

}
Run Code Online (Sandbox Code Playgroud)

输入:

{
    "company_name":"cachii1",
    "head":"sankar",
    "email":"sankar@gmail.com",
    "address":"chennai",
    "phno":"123",
    "contact_person":"sankar"
}
Run Code Online (Sandbox Code Playgroud)

输出:

{
    "msg": "Company Created",
    "Company": {
        "company_name": 0,
        "head": "sankar",
        "address": "chennai",
        "phno": "123",
        "contact_person": "sankar"
    }
}
Run Code Online (Sandbox Code Playgroud)

数据库架构是数据库架构是数据库架构是

    public function up()
    {
        Schema::create('companies', function (Blueprint $table) {
           // $table->increments('company_id');
            $table->string('company_name');
            $table->primary('company_name');
            $table->string('head');
            $table->string('contact_person');
            $table->bigInteger('phno');
            $table->string('email');
            $table->text('address');

        });
Run Code Online (Sandbox Code Playgroud)

fub*_*bar 6

默认情况下,Laravel希望您的模型主键是自动递增的。从您发布的内容来看,您的示例似乎并非如此。

将此添加到模型定义中:

public $incrementing = false;
Run Code Online (Sandbox Code Playgroud)