首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将数据表的列名和值重命名为从infyom laravel生成器生成的岛名称?

如何将数据表的列名和值重命名为从infyom laravel生成器生成的岛名称?
EN

Stack Overflow用户
提问于 2019-12-18 11:31:03
回答 1查看 492关注 0票数 0

我有两个模型给小岛和费舍尔。我想使用数据表来显示岛屿名称,而不是(island_id) fisher_first_name和fisher_last_name

如datatable中所示

岛屿Id Fisher名Fisher姓

1个Dovecot Imap 2 Jon时间

这是我的两个模型关系

代码语言:javascript
复制
public function fishers(){
        return $this->hasMany(Fisher::Class);
   }

  public function island(){
        return $this->belongsTo(Island::Class,'island_id');
    }

这是来自FisherDatatable的getColumns函数,我需要使用它将island_id更改为island_names

代码语言:javascript
复制
 protected function getColumns()
    {
        return [

          'island_id'
            'fisher_first_name',
            'fisher_last_name',

        ];
    }

这也是一个FisherDatatable的摘录,用来显示小岛和费舍尔的关系

代码语言:javascript
复制
  public function query(Fisher $model)
    {
        return $model->newQuery()->with(['island']);
    }

这是我的控制器

代码语言:javascript
复制
namespace App\Http\Controllers;

use App\DataTables\FisherDataTable;
use App\Http\Requests;
use App\Http\Requests\CreateFisherRequest;
use App\Http\Requests\UpdateFisherRequest;
use App\Repositories\FisherRepository;
use App\Models\Island;
use Flash;
use App\Http\Controllers\AppBaseController;
use Response;

class FisherController extends AppBaseController
{
    /** @var  FisherRepository */
    private $fisherRepository;

    public function __construct(FisherRepository $fisherRepo)
    {
        $this->fisherRepository = $fisherRepo;
    }

    /**
     * Display a listing of the Fisher.
     *
     * @param FisherDataTable $fisherDataTable
     * @return Response
     */
    public function index(FisherDataTable $fisherDataTable)
    {
        return $fisherDataTable->render('fishers.index');
    }

    /**
     * Show the form for creating a new Fisher.
     *
     * @return Response
     */
    public function create()
    {
        $islands = Island::pluck('island_name','id');
        return view('fishers.create')->with('islands',$islands);
    }

    /**
     * Store a newly created Fisher in storage.
     *
     * @param CreateFisherRequest $request
     *
     * @return Response
     */
    public function store(CreateFisherRequest $request)
    {
        $input = $request->all();

        $fisher = $this->fisherRepository->create($input);

        Flash::success('Fisher saved successfully.');

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

    /**
     * Display the specified Fisher.
     *
     * @param  int $id
     *
     * @return Response
     */
    public function show($id)
    {
        $fisher = $this->fisherRepository->find($id);

        if (empty($fisher)) {
            Flash::error('Fisher not found');

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

        return view('fishers.show')->with('fisher', $fisher);
    }

    /**
     * Show the form for editing the specified Fisher.
     *
     * @param  int $id
     *
     * @return Response
     */
    public function edit($id)
    {
        $fisher = $this->fisherRepository->find($id);
        $islands = Island::pluck('island_name','id');
        if (empty($fisher)) {
            Flash::error('Fisher not found');

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

        return view('fishers.edit')
        ->with('fisher', $fisher)
       -> with('islands', $islands);
    }

    /**
     * Update the specified Fisher in storage.
     *
     * @param  int              $id
     * @param UpdateFisherRequest $request
     *
     * @return Response
     */
    public function update($id, UpdateFisherRequest $request)
    {
        $fisher = $this->fisherRepository->find($id);

        if (empty($fisher)) {
            Flash::error('Fisher not found');

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

        $fisher = $this->fisherRepository->update($request->all(), $id);

        Flash::success('Fisher updated successfully.');

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

    /**
     * Remove the specified Fisher from storage.
     *
     * @param  int $id
     *
     * @return Response
     */
    public function destroy($id)
    {
        $fisher = $this->fisherRepository->find($id);

        if (empty($fisher)) {
            Flash::error('Fisher not found');

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

        $this->fisherRepository->delete($id);

        Flash::success('Fisher deleted successfully.');

        return redirect(route('fishers.index'));
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-02 22:44:09

只需将名称、标题和数据数组添加到getColumns方法中

代码语言:javascript
复制
protected function getColumns()
    {
   return [
            ['name'=>'dropdown_label','title'=>'new name of label','data'=>"dropdown_label"],
            ['name'=>'dropdown_value','title'=>'new name of dropdwon value','data'=>"dropdown_value"],
            'active'
          ];
            
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59385105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档