简体   繁体   English

在 Laravel 上的一对一函数上出错

[英]Getting error on one to one function on laravel

I want to join tbl_company_list and tbl_commpany_detail using one to one function on Laravel.我想在 Laravel 上使用一对一函数加入 tbl_company_list 和 tbl_commpany_detail。

@ompany_list table

id (primary_key) | symbol | companyname | sectorid | status

@company_detail table

id (primary_key) | companyid | shares | paidup | baseprice | basepriceRB | operationdate | phone_no | address | website | email | status

I want to join 'id' of company_list table to 'companyid' of company_detail table.我想将 company_list 表的 'id' 加入到 company_detail 表的 'companyid'。

I want to make one to one relation such that if I delete companay_list then it will automatically delete commpany_detail.我想建立一对一的关系,这样如果我删除companay_list,它就会自动删除commpany_detail。 And I also want to get companyname of company_list table from company_detail table.而且我还想从 company_detail 表中获取 company_list 表的 companyname 。

@AdminCompany Model

public static function companydetail(){
    $data = $this->hasOne('App\admin\AdminCompanyDetail');
    return $data; 
}

@AdminCommpanyDetail Model

public static function company(){
    $data = $this->belongsTo('App\admin\AdminCompany');
    return $data; 
}

But I am getting error as PHP error:但我收到错误为 PHP 错误:

Using $this when not in object context in C:\\xampp\\htdocs\\laravel5.5\\app\\admin\\AdminCompanyDetail.php on line 30在第 30 行的 C:\\xampp\\htdocs\\laravel5.5\\app\\admin\\AdminCompanyDetail.php 中不在对象上下文中时使用 $this

@AdminCompany Controller

public function destroy($id)
{
    //
    $company = AdminCompany::findOrFail($id);
    $company->delete();

    return redirect(route('company.index'));
}

What code should I need to add to this controller so that I can delete the companydetail also.我应该向这个控制器添加什么代码,以便我也可以删除 companydetail。

Try this fro AdminCompany model:试试这个 AdminCompany 模型:

public function companydetail()
    {
        return $this->belongsTo(AdminCompanyDetail::class, 'companyid');
    }

And this for the AdminCommpanyDetail这对于 AdminCompanyDetail

 public function company()
    {
        return $this->hasOne(AdminCompany:class, 'companyid', 'id' );
    }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM