laravel 心得
1.安装
使用composer安装laravel ,切换到你想要放置该网站的目录下,运行命令:
composer create-project laravel/larevel project 4.1
然后。当前目录就是出现project的文件夹,然后把app/storage目录设为777,输入即可看到安装成功的页面。
2.安装插件
我们一安装Sentry插件为例,来构建登陆等权限验证系统
打开./composer.json,变更为:
- "require": {
- "laravel/framework": "4.1.*",
- "cartalyst/sentry": "2.1.4"
- },
然后再项目根目录运行命令
composer update
稍等一会,就会提示cartalyst/sentry2.14安装完成
同理,我们将安装一个开发用的强大插件,way/generators,这是它在composer库中的名字。在composer.json中增加:
- "require-dev": {
- "way/generators": "~2.0"
- },
注意和"require"同级,放在下面。
运行composer update,之后再./app/config/app.php中的恰当位置增加配置:
- 'Way\Generators\GeneratorsServiceProvider'
安装后,在命令行运行php artisan,就可以看到这个插件带来的许多功能。
3.数据库建立及迁移
数据的迁移migrate详细介绍,请参看laravel数据迁移的详细介绍。
数据库配置文件位于./app/config/database.php,根据自己数据录类型自行配制,下面是MySQL的例子:
- 'mysql' => array(
- 'driver' => 'mysql',
- 'host' => 'localhost',
- 'database' => 'laravel',
- 'username' => 'root',
- 'password' => 'password',
- 'charset' => 'utf8',
- 'collation' => 'utf8_unicode_ci',
- 'prefix' => 'l4_',
- ),
在命令中输入(注意:先把laravel表在数据库中创建):
- php artisan migrate --package=cartalyst/sentry
执行完成后,数据库中就有5张表,这是sentry自己建立的,具体配置见 https://cartalyst.com/manual/sentry#laravel-4,
注意:安装Sentry后,需要在./app/config/app.php中相应的位置增加以下两行
- 'Cartalyst\Sentry\SentryServiceProvider',
- 'Sentry' => 'Cartalyst\Sentry\Facades\Laravel\Sentry',
我们简单的创建两个表,熟悉下命令:
- php artisan migrate:make create_articles_table --create=articles
- php artisan migrate:make create_pages_table --create=pages
然后再./app/database/migrations下,将会多出两个文件,这就是数据库迁移文件,我们在这两个文件中,添加相应的字段,然后运行命令:
- php artisan migrate
这个时候,数据库中就会建立相应的数据表
4.模型Models
接下来我们将学习Laravel中最强大的部分,Eloquent ORM
我们在命令行运行下列语句创建两个Model
- php artisan generate:model article
- php artisan generate:model page
这个时候在app/models/下就出现了两个文件Article.php和Page.php,这是两个Model类,他们都继承了Laravel提供的核心类\Eloquent。详见Eloquent系列教程:深入理解Laravel Eloquent(一)--基本概念与用法
5.数据库填充
分别运行下列命令:
- php artisan generate:seed page
- php artisan generate:seed article
这时,在./app/database/seeds/下就出现了两个新文件,这就是我们的数据库填充文件。Laravel提供自动数据库填充,十分方便。
generate默认使用Faker\Factory作为随机数据生成器,需要安装这个composer包,地址为:https://packagist.org/packages/fzaninotto/faker,跟generator一起安装在require-dev中即可。
然后再DatabaseSeeder.php中增加两行,让Laravel在seed的时候会带上我们新增的这两个seed文件。
- $this->call('ArticleTableSeeder');
- $this->call('PageTableSeeder');
然后通过下列命令把数据填充到数据库:
- php artisan db:seed
6.视图分离与嵌套
在目录文件夹下运行命令:
- php artisan generate:view admin._layouts.default
这个时候,generator插件会帮我们创建app/views/admin/_layouts/default.blade.php,将内容修改为
- <!doctype html>
- <html>
- <head>
- <meta charset="utf-8">
- <title>Learn Laravel 4</title>
- @include('admin._partials.assets')
- </head>
- <body>
- <div class="container">
- <div class="navbar navbar-inverse navbar-fixed-top">
- <div class="navbar-inner">
- <div class="container">
- <a class="brand" href="{{ URL::route('admin.pages.index') }}">Learn Laravel 4</a>
- @include('admin._partials.navigation')
- </div>
- </div>
- </div>
- <hr>
- @yield('main')
- </div>
- </body>
- </html>
大概的内容就是这么多,具体的请查看岁寒的Laravel4 系列入门教程,本文只是在学习之余记录一下,方便以后查找,如果能帮到你们,那就更好了。
laravel 心得的更多相关文章
- Laravel使用心得
Laravel使用心得 1.session使用 laravel的session使用时,不要使用exit和die,否则session会为空. 2.ajax提交注意框架对post的CSRF保护 在头加上& ...
- 用laravel dingo api插件库创建api的一些心得笔记
用laravel创建api是很多大型项目正在使用的方法,一般他们都是用dingo api插件库来开发自己的api.以下是ytkah用dingo api的一些心得,有需要的朋友可以关注一下 1.安装 因 ...
- php的laravel框架使用心得
最近在做一项目,是基于laravel的后台api,用于与手机交互的,数据采用json格式.下面说下怎样在两周内把一个新框架或者语言用的得心应手. 项目采用laravel5.4+dingoapi+jwt ...
- PHP Laravel框架入门心得 | How to study PHP Laravel Framework
PHP有不少开发框架,其中比较出名的有Symfony和Laravel. 我说说我最近入门Laravel的感受和学习方法吧. 1.第一个感受是Laravel的社区讨论和学习资源真的是太棒了,中文化也做得 ...
- Laravel trait 使用心得
trait 是在PHP5.4中为了方便代码复用的一种实现方式,但目前我在看的的PHP项目中较少看的有程序员去主动使用这个实现方式,在laravel中有很多 trait 的使用,关于trait 在 la ...
- PHP trait 特性在 Laravel 中的使用个人心得
trait 是在PHP5.4中为了方便代码复用的一种实现方式,但目前我在看的的PHP项目中较少看的有程序员去主动使用这个实现方式,在laravel中有很多 trait 的使用,关于trait 在 la ...
- laravel artisan 工具心得
介绍一些非常好用的命令: 1.创建一个Eloquent模型:顺便创建一个对应的数据库表 php artisan make:model --migration Models/Admin/test 2.将 ...
- Laravel Homestead安装笔记
引言: 最近开始学习laravel框架,了解到有个laravel homestead的box,开发起来非常方便快捷,于是就准备开始配置homestead虚拟开发环境了 什么是Homestead 要想学 ...
- thinkphp框架使用心得
接触的第一个PHP框架就是TP,在使用的了一段时间后就放弃了,说实话TP的弊端挺多,之后又接触laravel框架,慢慢的就爱上laravel这个框架了.这段时间由于公司的原因,又不得不使用thinkp ...
随机推荐
- ecshop优化修改sitemap.xml到根目录
大家都知道sitemap.xml是用来给搜索引擎提交收录的工具,虽然搜索引擎自己也会收录网站但是有了sitemap.xml之后速度会加快不少.而ecshop程序是有自动生成sitemap.xml的功能 ...
- 安装python3.4
1.http://www.python.org下载适合自己机型的镜像文件 2.一路“next”到底,安装python到C盘上 3.计算机-属性-高级系统设置-环境变量,将刚刚安装的python路径添加 ...
- Keil C51中函数指针的使用
函数指针在C语言中应用较为灵活.在单片机系统中,嵌入式操作系统.文件系统和网络协议栈等一些较为复杂的应用都大量地使用了函数指针.Keil公司推出的C51编译器是事实上80C51 C编程的工业标准,它针 ...
- 《Programming WPF》翻译 第9章 6.我们进行到哪里了?
原文:<Programming WPF>翻译 第9章 6.我们进行到哪里了? 只有当任何内嵌控件都没有提供你需要的底层行为时,你将要写一个自定义控件.当你写一个自定义控件,你将要使用到依赖 ...
- Smarty 变量使用
Smarty的标签都是使用定界符括起来. 默认定界符是{ 和 }, 但定界符可以被改变. 比如说在本手册,我们会假定你在使用默认的定界符. 在Smarty看来,任何在定界符之外的内容,都是静态的,或者 ...
- Magento How To Display Product Custom Option On list.phtml
Some time we need to display custom option of product on category list page to achive this task we o ...
- 深入浅出Node.js (3) - 异步I/O
3.1 为什么要异步I/O 3.1.1 用户体验 3.1.2 资源分配 3.2 异步I/O实现现状 3.2.1 异步I/O与非阻塞I/O 3.2.2 理想的非阻塞异步I/O 3.2.3 现实的异步I/ ...
- POJ 1631 Bridging signals DP(最长上升子序列)
最近一直在做<挑战程序设计竞赛>的练习题,感觉好多经典的题,都值得记录. 题意:给你t组数据,每组数组有n个数字,求每组的最长上升子序列的长度. 思路:由于n最大为40000,所以n*n的 ...
- hdu 5656 CA Loves GCD(dp)
题目的意思就是: n个数,求n个数所有子集的最大公约数之和. 第一种方法: 枚举子集,求每一种子集的gcd之和,n=1000,复杂度O(2^n). 谁去用? 所以只能优化! 题目中有很重要的一句话! ...
- Linux各种包安装及命令
1.Locate yum -y install mlocate 若出现问题: locate: can not stat () `/var/lib/mlocate/mlocate.db': 没有那个文件 ...