laravel 手记
composer安装:https://getcomposer.org/download/
https://pkg.xyz/#how-to-install-composer
因为composer的服务器在国外,所以国内使用composer安装laravel超级慢,但是可以使用国内的一个镜像来安装,镜像官方网站:
如果目录中还没有composer.json文件,需要初始化一下
方法1:使用composer init命令初始化,这个命令将会启动一个交互式的提示过程,它会询问您关于项目的一些基本信息,如项目名称、描述、作者、最低稳定性、许可证等。根据您的项目需求回答这些问题,composer 将会为您生成一个基本的 composer.json 文件。
composer init
方法:手动创建 composer.json 文件,如果您更喜欢手动创建 composer.json 文件,您可以直接在项目根目录下创建一个新的 composer.json 文件,并填入以下基本结构:
{
"name": "your-vendor/your-project",
"autoload": {
"psr-4": {
"YourNamespace\\": "src/"
}
},
"authors": [
{
"name": "yiluPHP"
}
],
"require": {}
}
在这个例子中,"require" 部分列出了项目的依赖包,"require-dev" 部分列出了开发时的依赖包,"autoload" 部分定义了自动加载的命名空间和对应的目录。
在 composer.json 文件创建并编辑完成后,您可以运行以下命令来安装依赖:
composer install
使用composer安装laravel和lumen,默认是最新版本的,我们可以安装指定的版本,安装命令如下:
composer create-project --prefer-dist laravel/lumen=5.2.* blog
composer create-project --prefer-dist laravel/laravel=5.2.* blog
进入需要创建的目录中,执行以下创建项目命令,其中blog为即将创建的目录名称,一般为你的项目的名称。
查看当前laravel的版本信息,进入项目根目录,执行以下命令
php artisan --version
创建controller命令
php artisan make:controller UserController
创建model命令
php artisan make:model Article
创建数据表
php artisan make:migration create_article_table
修改它的 up 函数用于定义表结构,然后执行以下命令即可创建数据表
创建数据播种机Seeder
php artisan make:seeder ArticleSeeder
修改它的run函数,设置好数据生成方式
再修改database/seeds/DatabaseSeeder.php 中的 run 函数,调用刚刚创建的播种机:
$this->call(ArticleSeeder::class);
我们还需要运行以下命令把 ArticleSeeder.php 加入自动加载系统,避免找不到类的错误:
composer dump-autoload
然后执行 seed:
php artisan db:seed
Laravel 5.1 LTS 速查表:
https://cs.laravel-china.org/
Laravel搭建后台登录系统步骤详解【实例】
http://www.jb51.net/article/89314.htm
如果运行seeder时发生找不到class
Seeding: ArticlesSeeder
[ReflectionException]
Class ArticlesSeeder does not exist
先执行以下命令,然后再执行:
Generating autoload files
开启用户认证的步骤:
1、通过运行如下命令可快速生成认证所需要的路由和视图:
php artisan make:auth
执行后可以通过域名加/home来访问登录页,更详情内容查看文档官网的“用户认证”
http://d.laravel-china.org/docs/5.4/authentication#retrieving-the-authenticated-user
2、将 ``` config/database.php ``` 改为
。。。
‘charset‘ => ‘utf8‘,
‘collation‘ => ‘utf8_unicode_ci‘,
。。。
3、执行以下命令,这样用户表和忘记密码的表就创建成功了
php artisan migrate
laravel各种路径的获取方法
若Route中有Route::get('home/test', 'HomeController@index')->name('test');
①视图中的href跳转
一、
区别:最方便,但路由改变时就又要修改了
二、
区别:可直接命名使用,不因uri改变而改变,我喜欢用
注:用route需要在route中->name()
三、
区别:直接指定相关控制器,受影响最小
四、
区别:最容易受影响,不推荐使用
②控制器中redirect跳转使用
一、return redirect('home/test'); <=> return redirect()->to('home/test');
区别:同①一
二、return redirect()->action('HomeController@index');
区别:同①三
三、return redirect()->route(test'');
区别:同①二
四、return redirect()->back(); <=> return back();
说明:返回上一页面
③各个资源路径常量
一、public_path('uploads');
说明:public文件路径
二、base_path('xx');
三、app_path('xx');
四、resource_path('xx');
laravel 的一个权限控制组件
https://packagist.org/packages/geniusts/roles
简单解释
- composer install - 如有 composer.lock 文件,直接安装,否则从 composer.json 安装最新扩展包和依赖;
- composer update - 从 composer.json 安装最新扩展包和依赖;
- composer update vendor/package - 从 composer.json 或者对应包的配置,并更新到最新;
- composer require new/package - 添加安装 new/package , 可以指定版本,如: composer require new/package ~2.5.
- composer remove vendor/laravel - 卸载已经安装的包 vendor/laravel