laravel数据库迁移 Laravel中如何做数据库迁移
大家好,今天小编来为大家解答以下的问题,关于laravel数据库迁移,Laravel中如何做数据库迁移这个很多人还不知道,现在让我们一起来看看吧!
新手php框架要先学laravel好还是tp
对于新手来说是学习php框架最佳的选择是tp
thinkphp,国内的PHP框架,具有简单,快速,兼容等优点,。从5.0版本开始,号称为API开发而设计的高性能框架。配置开发也是非常简单,一般下载框架就可以直接开发,开发代码风格也符合国人思想,所以简单,快捷,适合新手的php框架。
Laravel框架,是当今最熟练,流行和广泛使用的开源框架之一。Laravel具有多种功能,例如模板引擎,MVC架构支持,安全性高,开发者工具,数据库迁移等。这些Laravel高级功能使它比其他PHP框架更好。新手为什么不强烈推荐呢?主要是Laravel框架是一个国际的框架,很多是英文,虽然有翻译文档,但是对于英语不好的新手来说,更是折磨。所以比较建议tp
laravel框架各文件作用是什么之间什么关系
文件的文件夹
作用
/app/config/
配置应用程序的运行时规则、数据库、 session等等。包含大量的用来更改框架的各个方面的配置文件。大部分的配置文件中返回的选项关联PHP数组。
/app/config/app.php
各种应用程序级设置,即时区、区域设置(语言环境)、调试模式和独特的加密密钥。
/app/config/auth.php
控制在应用程序中如何进行身份验证,即身份验证驱动程序。
/app/config/cache.php
如果应用程序利用缓存来加快响应时间,要在此配置该功能。
/app/config/compile.php
在此处可以指定一些额外类,去包含由‘artisan optimize’命令声称的编译文件。这些应该是被包括在基本上每个请求到应用程序中的类。
/app/config/database.php
包含数据库的相关配置信息,即默认数据库引擎和连接信息。
/app/config/mail.php
为电子邮件发件引擎的配置文件,即 SMTP服务器,From:标头
/app/config/session.php
控制Laravel怎样管理用户sessions,即session driver, session lifetime。
/app/config/view.php
模板系统的杂项配置。
/app/controllers
包含用于提供基本的逻辑、数据模型交互以及加载应用程序的视图文件的控制器类。
/app/database/migrations/
包含一些 PHP类,允许 Laravel更新当前数据库的架构并同时保持所有版本的数据库的同步。迁移文件是使用Artisan工具生成的。
/app/database/seeds/
包含允许Artisan工具用关系数据来填充数据库表的 PHP文件。
/app/lang/
PHP文件,其中包含使应用程序易于本地化的字符串的数组。默认情况下目录包含英语语言的分页和表单验证的语言行。
/app/models/
模型是代表应用程序的信息(数据)和操作数据的规则的一些类。在大多数情况下,数据库中的每个表将对应应用中的一个模型。应用程序业务逻辑的大部分将集中在模型中。
/app/start/
包含与Artisan工具以及全球和本地上下文相关的自定义设置。
/app/storage/
该目录存储Laravel各种服务的临时文件,如session, cache, compiled view templates。这个目录在web服务器上必须是可以写入的。该目录由Laravel维护,我们可以不关心。
/app/tests/
该文件夹给你提供了一个方便的位置,用来做单元测试。如果你使用PHPUnit,你可以使用Artisan工具一次执行所有的测试。
/app/views/
该文件夹包含了控制器或者路由使用的HTML模版。请注意,这个文件夹下你只能放置模版文件。其他的静态资源文件如css, javascript和images文件应该放在/public文件夹下。
/app/routes.php
这是您的应用程序的路由文件,其中包含路由规则,告诉 Laravel如何将传入的请求连接到路由处理的闭包函数、控制器和操作。该文件还包含几个事件声明,包括错误页的,可以用于定义视图的composers。
/app/filters.php
此文件包含各种应用程序和路由筛选方法,用来改变您的应用程序的结果。Laravel具有访问控制和 XSS保护的一些预定义筛选器。
花了很多心思在建立和命名文件夹上,得到的就是一个具有良好的文件系统的应用程序。
在这里你得到了什么:MVC
Laravel中如何做数据库迁移
总的来说,做一次独立数据库迁移只需要三步,分别是创建迁移文件、修改迁移文件、运行迁移
1.创建数据库迁移文件php artisan make:migration create_articles_table1然后在database/migrations目录下就会多出一个迁移文件,不过Laravel会在前面自动加上时间戳,来判断执行顺序然后命令后面可以加上–table或者–create来指定迁移文件对应的表名或者是新建一个数据表
php artisan make:migration create_articles_table--create=articlephp artisan make:migration create_articles_table--table=article122.修改迁移文件打开新建文件我们会发现里面包含了两个方法up和down
当运行迁移时,调用up方法当回滚迁移时,调用down方法
<?php
use Illuminate\Support\Facades\Schema;use Illuminate\Database\Schema\Blueprint;use Illuminate\Database\Migrations\Migration;
class CreateArticlesTable extends Migration{/*** Run the migrations.**@return void*/ public function up(){ Schema::create(‘articles‘, function(Blueprint$table){$table->increments(‘id‘);$table->timestamps();});}
/*** Reverse the migrations.**@return void*/ public function down(){ Schema::dropIfExists(‘articles‘);}}12345678910111213141516171819202122232425262728293031我们主要修改up方法,而Laravel已经为我们生成了两个字段,我们在上面添加两个字段
public function up(){ Schema::create(‘articles‘, function(Blueprint$table){$table->increments(‘id‘);$table->string(‘title‘);$table->string(‘content‘);$table->timestamps();});}1234567893.运行迁移php artisan migrate1Laravel会自动寻找没有执行的迁移文件,如果你只想执行指定文件的话,可以在后面加上–path参数,指定文件名
然后我们可以连接数据库,看到新建了一张名为article的表,同时里面包含了5个字段。
如果要回滚迁移的话 1.回滚所有迁移
php artisan migrate:reset12.回滚最后一次执行的迁移
php artisan migrate:rollback13.重置数据库并重新运行所有迁移
php artisan migrate:refresh
Laravel中如何做数据库迁移
标签:需要连接数据库运行ropreturnclassend连接数行迁移
laravel框架的数据库备份怎么做
配置数据库
我们安装wamp,并且使用mysql方式。用wamp自带的phpMyAdmin添加一个名字为laravel的数据库。
app/config目录下,database.php包含数据库的配置,打开并修改mysql部分为如下:
建立一个迁移
在cmd里面,定位到 laravel所在目录,执行如下命令:
php artisan migrate:make--create=articles
其中,--create=articles就表示建立数据表
这样,在 app/database/migrations/目录下,会生成一个迁移文件。文件名是时间编号+create_articles_table.php本例是:2015_01_25_144256_create_articles_table.php
修改迁移
打开文件,2015_01_25_144256_create_articles_table.php
里面类CreateAritclestable负责管理数据库,它的up方法调用Schema::create来建立一个数据表articles,默认已经包括一个自增的id和时间字段。
如红线所示,我们再添加两个字段title和 text。
执行迁移
在cmd命令窗口,执行如下命令:
php artisan migrate
然后查看数据库laravel
OK,关于laravel数据库迁移和Laravel中如何做数据库迁移的内容到此结束了,希望对大家有所帮助。