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 ...
随机推荐
- C语言中关于字符串的一些常用函数
使用以下时应当在头文件中加入string.h getch()为当你键入任何一个值时,返回但是并不显示,立马编译结束,返回的是asc码 getchar():当你键入回车之后才算是输入结束,并且可以用p ...
- css3绘制几何图形
用css3绘制你需要的几何图形 1.圆形 示例: 思路:给任何正方形元素设置一个足够大的 border-radius ,就可以把它变成一个圆形.代码如下: html: <div class=&q ...
- AngularJS 基础教程二:
5.过滤器 过滤器的主要功能是格式化数据 可以使用Angular提供的过滤器,也可以自定义过滤器 Angular过滤器: currency(货币).date(日期).filter(子串匹配).json ...
- Android新建项目手动添加Layout布局
前言: 这是看<第一行代码>学习到的第一章,之前使用Eclipse创建Android项目都是自动生成MainActivity.java文件和layout文件夹下的activity_main ...
- DEVExpress For WPF 中GridControl如何实现滚动分页(延迟查询)
在显示大量数据时一般采用分页显示,但是最近用户需要滚动显示,那么问题来了,滚动显示要求将数据全部查询回来,这显然会导致显示速度很慢. 好在想到一种方式,就是当用户滚动鼓动条的时候再查询下面的数据.好吧 ...
- 《Programming WPF》翻译 第6章 5.我们进行到哪里了?
原文:<Programming WPF>翻译 第6章 5.我们进行到哪里了? WPF提供了资源工具,让我们运用在用户界面中,动态并具有一致性.我们可以在资源字典中存储任意资源,并且可以遍及 ...
- (转)open和fopen的区别:
fopen与open的区别 open和fopen的区别: 1.缓冲文件系统缓冲文件系统的特点是:在内存开辟一个“缓冲区”,为程序中的每一个文件使用,当执行读文件的操作时,从磁盘文件将数据先读入内存“缓 ...
- poj 3498 March of the Penguins(最大流+拆点)
题目大意:在南极生活着一些企鹅,这些企鹅站在一些冰块上,现在要让这些企鹅都跳到同一个冰块上.但是企鹅有最大的跳跃距离,每只企鹅从冰块上跳走时会给冰块造成损害,因此企鹅跳离每个冰块都有次数限制.找出企鹅 ...
- Java宝典(四)------Java中也存在内存泄露。
--Java中会存在内存泄露吗? --如果你想当然的以为Java里有了垃圾回收机制就不会存在内存泄露,那你就错了. Java里也会存在内存泄露! 我们慢慢来分析. 所谓内存泄露就是指一个不再被程序使用 ...
- 关于safari上的select宽高问题小技,自定义下拉框
之前一直用windows做开发,最近换了个mac,在几经折腾之下,安装完了各种开发工具,IDE等,然后欣然打开自己正在开发的网站.突然发现mac上所有的下拉框都变了,都是默认样式,无论padding, ...