php把路由放在数据库,创建控制器,通过设置路由访问;创建模型,从数据库表中获取数据,引用,并输出—2019年11月1日...

通过artisan和手动创建控制器,并通过设置路由访问

设置路由访问:

Route::get('/home','home@index');

// 在浏览器输入lv.io/home时,会访问到控制器Home.php中的index方法。

创建控制器:

在app/Http/Controllers中新建一个Home.php的文件

内容如下:<?php

namespace App\Http\Controllers;    //命名空间必须要有

class Home extends Controller      //类名首字母必须大写和文件名一致,必须继承。

{

public function index(){

echo 'hello home ';       //这里直接返回内容,

}

}

//此时访问 lv.io/home   就会显示hello home

命令行创建控制器:

cmd进入,在项目的根目录:php artisan make:controller Home       就可以创建名为Home.php的控制器

内容如下:<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;    //暂时用不到。

class Home extends Controller

{

//

}

//自己创建方法就可以。

通过artisan和手动创建模型,并通过配置数据库实现从表中获取数据

配置数据库:

.env文件

DB_CONNECTION=mysql

DB_HOST=127.0.0.1

DB_PORT=3306

DB_DATABASE=ouyangke

DB_USERNAME=root

DB_PASSWORD=root

其他方法:config下的database文件就是和数据库相关的,'default' => env('DB_CONNECTION', 'mysql'),   默认从env文件中获取数据库的信息,如果注释掉。查看connections,各种数据的连接,都是默认从env中获得数据,如果env中没有这6条记录,就从这里配置。

创建模型:

在App目录下新建一个Models新建一个php模型,比如要连接数据库ouyangke中的一个表user表。新建一个User.php   (规范:首字母大写)

内容如下:<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;     //必须引入模型

class User extends Model

{

// $table,$primaryKey关键字是固定的

protected $table = 'user';  //指定表名,如果不写这一条,会默认从users中查询,模型自动加一个s

protected $primaryKey = 'uid';  //指定主键的名称,如果不写这一条,会默认为id,就不能执行查找某一条数据等操作了

public function demo(){

// 查询表中所有的数据

// return $this->get()->all();

// 只要有用的数据

return $this->get()->toArray();

}

}

命令行创建模型:

cmd进入,在项目的根目录:php artisan make:model Models/User

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Demo extends Model

{

//内容

}

在控制器中引用模型,通过模型方法获取数据库中的数据,并输出<?php

namespace App\Http\Controllers;

use App\Models\User;    //使用模型前必须引用

class Home extends Controller{

// 参数,引入了User类,第一个参数就是User,$user就是实例化的对象,就能直接调用类中的方法。

public function index(User $user){

$res = $user->demo();

dump($res);

}}

访问lv.io/home ,就会在页面显示数据库的内容。

总结:

为什么没有模型目录?当开始使用 Laravel 时,许多开发人员都因缺少  models

目录而感到困惑。然而,缺少这样的目录是故意的。我们发现「模型」含糊不清,因为不同的人对「模型」有不同的理解。一些开发者把应用的「模型」称为其所有业务逻辑的总体,而另一些人将「模型」称为与关系数据库交互的类。出于这个原因,我们默认把

Eloquent 的模型放在  app   目录下,并允许开发人员将它们放在其他地方。

不好的地方:如果有200张表就得创建200个模型类。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值