再见少年拉满弓,不惧岁月不惧风

Laravel 5 的 Migrations相关

说明 以前我们团队进行开发,如果数据库结构修改,就要从MySQLWorkbench把整个库或某个表的SQL语句导出来再提交到git, 别人用SQL语句重建某个库或某个表,这样好麻烦。Laravel Migrations就可以避免做这件事。只需要获取到migrations的文件,再migrate就可以了,而且还可以rollback。 数据库配置 在.env文件配置数据库环境的信息。 相关的migrate命令 创建migrations表记录相关的动作 php artisan migrate:install 更新数据库信息 php artisan migrate 回滚migrate操作 php artisan migrate:rollback 回滚到所有的migrate操作之前 php artisan migrate:reset 回滚到最开始的时候然后运行所有的mirgrations php artisan migrate:refresh 查看migration状态 php artisan migrate:status 创建migration文件 php artisan make:migration 创建的所有文件在 database/migrations目录下 查看帮助 php artisan help make:migration 指定创建的migration文件名 php artisan make:migration create_admins_table 创建migration指定创建数据库表名 php artisan make:migration create_authors_table --create=authors 执行这个命令生成的代码, up 和 down方法自动填充了相关创建表和删除表的代码 创建migration指定修改的数据库表名 php artisan make:migration set_email_to_unique_on_authors_table --table=authors 执行这个命令生成的代码, up 和 down自带了指定表名的代码 migrations文件 所有的migrations文件在database/migrations目录下。 每个migration文件都有两个方法: up & down,up 表示执行migrate时候要执行的操作,down表示回滚up方法所进行的操作。这两个方法需要自行编写。 一般在up方法定义数据表结构, 例如: public function up() { Schema::create('authors', function (Blueprint $table) { $table->increments('id'); $table->timestamps(); }); } 直接用$table的相关方法设置数据表结构,相关的方法见Laravel 5的文档migrations节。 migrations文件中表的相关操作 判断表是否存在

Laravel 5 的配置说明

说明 Laravel 5 使用根目录的.env文件配置了默认的参数,由于.gitignore文件加入了.env文件,所以.env文件是不会提交到git版本控制系统上。 所有的相关的配置文件在根目录的config目录下。 在实际的配置文件中,使用env函数获取到.env文件的参数代替现有的参数,比如app.php的key对应的是env(‘APP_KEY’, ‘xxxxxx’), env函数第二个参数表示默认的值。 Laravel 5 使用的是 phpdotenv 这个包实现这个功能。phpdotenv 的 github 传送门为 https://github.com/vlucas/phpdotenv 可以复制份.env.example提交到版本控制系统给其它的开发人员。

Laravel 5使用Seeder & Faker创建假数据用于测试

说明 以前我们总是手动的填充假数据,例如在excel表用连接所要的列生成所有的SQL语句,扔到数据库里运行。 现在 Seeder & Faker 能很方便地为我们生成假数据。 所有的seeder文件在 database/seeds目录下。 Seeder DatabaseSeeder.php 这个文件只有run()方法,当执行 php artisan db:seed的时候会执行这个方法。 如果要调用其它的Seeder, 需要手动增加代码, 例如: $this->call(AuthorTableSeeder::class); 创建seeder文件 php artisan make:seeder AuthorTableSeeder seeder文件 seeder文件只有一个方法: run() 运行seeder php artisan db:seed php artisan db:seed --class=AuthorsTableSeeder 重建所有表结构和填充假数据 php artisan migrate:refresh --seed Faker github地址: https://github.com/fzaninotto/Faker composer安装 composer require fzaninotto/faker 或者 vim composer.json "require": { "fzaninotto/faker": "dev-master" }, composer self-update composer update 编写seeder 生成中文姓名, 中文的地址 public function run() { DB::table('authors')->truncate(); $faker = Faker\Factory::create('zh_CN'); $faker->addProvider(new Faker\Provider\zh_CN\Address($faker)); for ($i=0; $i<100; $i++) { DB::table('authors')->insert([ 'username' => $faker->name, 'address' => $faker->address, ]); } } #####执行seed

Mac下使用RVM安装Ruby

安装RVM RVM网址 http://rvm.io/ 安装gpg brew install gpg 安装RVM gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 curl -sSL https://get.rvm.io | bash -s stable 增加PATH source ~/.profile 修改国内的安装源 sed -i .bak 's!cache.ruby-lang.org/pub/ruby!ruby.taobao.org/mirrors/ruby!' $rvm_path/config/db 载入RVM环境 rvm reload 查看RVM版本 rvm -v RVM使用 查看Ruby的版本 rvm list known 列出安装了的Ruby rvm list 检查系统必要的包,必须安装gcc49相关的依赖包 rvm requirements 查看当前RVM环境的详细信息 rvm info 安装 Ruby 1.9.3 rvm install 1.9.3 安装 Ruby 2.2 rvm install 2.2 指定默认的版本 rvm 2.2 --default 指定使用的版本 rvm use 1.9.3 删除

Mac设置SSH免密码登录和用rsync上传文件

安装ssh-copy-id brew install ssh-copy-id 设置SSH免密码登录 在本地生成公钥和私钥 ssh-keygen 执行这个命令会提示输入密钥文件的全路径,一般为用户目录的.ssh/id_rsa, 还有passphrase。 上传公钥文件到远程服务器 ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected] 执行这个命令会将公钥信息加入到远程服务器上的.ssh/authorized_key文件中。 测试无密码登录 ssh [email protected] rsync上传文件 rsync -avzP ~/test.txt -e ssh [email protected]:/root

Laravel 5.1 传输信息到 Javascript

环境说明 Laravel 5.1 jQuery 1.11.3 illuminate/html 5.* laracasts/utilities ~2.0 安装 PHP-Vars-To-Js-Transformer github网址 https://github.com/laracasts/PHP-Vars-To-Js-Transformer 通过Composer安装,修改composer.json { "require": { "laracasts/utilities": "~2.0" } } composer更新包 composer update Laravel 增加 service provider vim config/app.php 修改providers,增加如下内容: Laracasts\Utilities\JavaScript\JavaScriptServiceProvider::class, 生成配置文件 php artisan vendor:publish 测试 增加路由 vim app/Http/routes.php Route::any('test', function(){ $data = array( 'foo' => 'bar', 'a' => 100, 'array' => array( 'b' => '1111', 'c' => '2222', ), ); JavaScript::put($data); return view('test'); }); 增加view vim resources/views/default.blade.php @include('header') @yield('content') @include('footer') vim resources/views/header.
0%