如何在Laravel 5.6中使用现有表格?

时间:2018-02-22 10:55:01

标签: php laravel

我对Laravel非常陌生(就像学习2天一样)而且我已经完成了Laradvel laracast的大部分介绍。

我想今天我自己做了一个项目。

我希望能够在Laravel中使用现有的表格。例如,我有一张名为“kjv'”的圣经表。它包含以下列:

CREATE TABLE `kjv` (
  `id` int(11) NOT NULL,
  `book` varchar(140) COLLATE utf8mb4_unicode_ci NOT NULL,
  `chapter` smallint(6) DEFAULT NULL,
  `verse` int(11) DEFAULT NULL,
  `contents` mediumtext COLLATE utf8mb4_unicode_ci,
  `in-red` mediumtext COLLATE utf8mb4_unicode_ci,
  `all-red` tinyint(1) NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

我已将其导入我的laravel数据库。

问题是,我不想创建新的迁移,因为这会覆盖数据。

我希望能够在我的项目中使用数据,那么我该怎么做呢?我猜我需要一个模型,但我不知道我在那里写什么。我还需要一个控制器吗?

我希望能够开始使用' get verse'模型中的函数,让我们说一下:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

use App\KJV;

class KJV extends Model
{
    //

    public function verse($id) {

        $verse = KJV::find($id);

        return view("verse");

    }

}

当然,我真的在这里猜测。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:4)

KJV模型中的

Specify the table name

protected $table = 'kjv';

然后这段代码就可以了:

KJV::find($id);

答案 1 :(得分:1)

在您使用migrations或仅importing数据库结构设置数据库后,您创建的模型将包含您的所有attributesrelationships有。要使用CRUD功能,我建议您使用Resource Controllers,之后您需要在路由器和资源控制器之间创建连接,您可以在标题下方的链接上找到该连接