Laravel学习笔记(二)构建新项目

参考自:https://www.toptal.com/laravel/restful-laravel-api-tutorial

1、修改.env配置文件里数据库的相关信息
DB_CONNECTION=mysql
DB_HOST= 192.168.xx.xx
DB_PORT=3306
DB_DATABASE= xxx
DB_USERNAME= xxxx
DB_PASSWORD= xxxx
2、进入新建项目的目标文件夹
composer install : 安装相关依赖
php artisan migrate : 根据migration里的文件生成数据库里的表
php artisan db:seed : 自动填充数据
php artisan serve :启动服务器


指定启动服务器的主机和端口号
$ php artisan serve --host=0.0.0.0 --port=8080

3、具体实例

1)新建类
php artisan make:model Article -m

在目标文件夹运行上述命令之后,会自动在app目录下生成Article.php(在文件里写明该类对应的数据库字段名)、

在database/migrations下面生成CreateArticlesTable的类文件(在文件里写明要生成的数据库表的字段名和字段类型,

可以指定是否允许为空,默认值为多少,标明注释)

例如:

$table->integer('weight')    字段名
    ->comment('权重')        中文注释
    ->nullable()             允许为空
    ->default(0);            默认值为0
2)数据库自动生成表
php artisan migrate

该命令会根据database/migrations里的文件内容自动生成数据库表

3)自动生成seeds
php artisan make:seeder ArticlesTableSeeder

该命令会在database/seeds下生成seeder文件,在seeder文件里指定模拟数据的类型和长短

4)自动填充数据
php artisan db:seed --class=ArticlesTableSeeder

执行上述命令可以根据seeder文件自动向数据库里插入模拟数据

如果将新生成的seeder文件添加到DatabaseSeeder 的run()方法中,

$this->call(UsersTableSeeder::class);
则只需要执行php artisan db:seed 即可一次性生成DatabaseSeeder里
指定的seeder文件里的模拟数据。如果此方法生成失败,
则需要指定要自动生成数据的seeder:
php artisan db:seed --class=ArticlesTableSeeder

5)新建Controller
php artisan make:controller ArticleController

在controller里面写基本的增删改查方法,如果有复杂的方法则新建

service层,再在controller里进行引用。

该命令会在app/HTTP/Controllers下生成controller文件

例如:

查list:

public function index()
    {
        return Article::all();
    }
 
查单条记录:
    public function show($id)
    {
        return Article::find($id);
    }
新增单条数据:

    public function store(Request $request)
    {
        return Article::create($request->all());
    }
修改单条数据:

    public function update(Request $request, $id)
    {
        $article = Article::findOrFail($id);
        $article->update($request->all());

        return $article;
    }
删除单条数据
    public function delete(Request $request, $id)
    {
        $article = Article::findOrFail($id);
        $article->delete();

        return 204;
    }

6)添加路由

routes/api.php里加入

Route::get('articles', 'ArticleController@index');
Route::get('articles/{id}', 'ArticleController@show');
Route::post('articles', 'ArticleController@store');
Route::put('articles/{id}', 'ArticleController@update');
Route::delete('articles/{id}', 'ArticleController@delete');


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值