Aug
5
最近做了几个项目,使用了laravel去实现.确实很快.如果业务逻辑简单,只需要一个下午可以写七八个模块.当然业务复杂的,就不能用这个作为评价.
laravel+laravel-admin可以简化大部分的开发工作.但存在适应度问题,如果提供组件不能满足你的需求,你可能需要自己去开发组件.
好吧.这里我也只是想记录一下,laravel的经验而已.
一 创建laravel项目
二配置
修改项目配置, 主要修改数据库
vim .env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=blog
DB_USERNAME=tim
DB_PASSWORD=111111
解决laravel 字段长度问题,以及将sql打印出来.
vim app/Providers/AppServiceProvider.php
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
public function boot()
{
//
Schema::defaultStringLength(191);
DB::listen(function ($sql) {
foreach ($sql->bindings as $i => $binding) {
if ($binding instanceof \DateTime) {
$sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\'');
} else {
if (is_string($binding)) {
$sql->bindings[$i] = "'$binding'";
}
}
}
// Insert bindings into query
$query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql);
$query = vsprintf($query, $sql->bindings);
Log::debug($query);
});
}
三 常用命令
执行数据库语句
添加 laravel-admin
发布laravel-admin用到的资源到项目代码中
# 安装laravel-admin到程序中
创建一个模块以及数据库版本
# php artisan make:migration create_表名_table --create = 表名
# -m 创建migrate版本
php artisan make:model -m Models\\Blog
修改表结构
# php artisan make:migration add_字段名_column_to_表名 --table = 表名
php artisan make:migration add_intro_column_to_blogs --table=blogs
创建一个后台使用的controller
# php artisan admin:make 控制器名Controller --model=模型名
php artisan admin:make Data\\BlogController --model=App\\Models\\Blog
laravle 创建数据表时所用到的字段方法
https://laravel.com/docs/5.8/migrations#columns
laravel-admin在显示表单时所用到的表单形式
https://laravel-admin.org/docs/zh/model-form-fields
laravel+laravel-admin可以简化大部分的开发工作.但存在适应度问题,如果提供组件不能满足你的需求,你可能需要自己去开发组件.
好吧.这里我也只是想记录一下,laravel的经验而已.
一 创建laravel项目
composer create-project --prefer-dist laravel/laravel blog "5.*"
cd blog/
cd blog/
二配置
修改项目配置, 主要修改数据库
vim .env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=blog
DB_USERNAME=tim
DB_PASSWORD=111111
解决laravel 字段长度问题,以及将sql打印出来.
vim app/Providers/AppServiceProvider.php
use Illuminate\Support\Facades\Schema;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;
public function boot()
{
//
Schema::defaultStringLength(191);
DB::listen(function ($sql) {
foreach ($sql->bindings as $i => $binding) {
if ($binding instanceof \DateTime) {
$sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\'');
} else {
if (is_string($binding)) {
$sql->bindings[$i] = "'$binding'";
}
}
}
// Insert bindings into query
$query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql);
$query = vsprintf($query, $sql->bindings);
Log::debug($query);
});
}
三 常用命令
执行数据库语句
php artisan migrate
添加 laravel-admin
composer require encore/laravel-admin
发布laravel-admin用到的资源到项目代码中
php artisan vendor:publish --provider="Encore\Admin\AdminServiceProvider"
# 安装laravel-admin到程序中
php artisan admin:install
创建一个模块以及数据库版本
# php artisan make:migration create_表名_table --create = 表名
# -m 创建migrate版本
php artisan make:model -m Models\\Blog
修改表结构
# php artisan make:migration add_字段名_column_to_表名 --table = 表名
php artisan make:migration add_intro_column_to_blogs --table=blogs
创建一个后台使用的controller
# php artisan admin:make 控制器名Controller --model=模型名
php artisan admin:make Data\\BlogController --model=App\\Models\\Blog
laravle 创建数据表时所用到的字段方法
https://laravel.com/docs/5.8/migrations#columns
laravel-admin在显示表单时所用到的表单形式
https://laravel-admin.org/docs/zh/model-form-fields