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 ...
随机推荐
- 一个超级简单php的留言板
第一步:配置好测试环境:(详细略了) 第二部:新建一个数据库,命名为guestbook(名字可以随便改),可以直接在phpmyadmin里面操作,在数据库里面新建一张表‘content’,表里面有4个 ...
- 根据identifier从StoryBoard中获取对象,UIButton的图片文件位置
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- CocosCode IDE 打包APK失败的原因
因为在lua目录下应用了git版本控制,导致打包的时候,复制(移动).git里面的文失败.从而第一次能打包成功,第二次之后就会失败.提示 os.move()失败.对应framworks/runtime ...
- LeetCode_Unique Binary Search Trees II
Given n, generate all structurally unique BST's (binary search trees) that store values 1...n. For e ...
- Android得到控件在屏幕中的坐标
getLocationOnScreen ,计算该视图在全局坐标系中的x,y值,(注意这个值是要从屏幕顶端算起,也就是索包括了通知栏的高度)//获取在当前屏幕内的绝对坐标 getLocationInWi ...
- unix c 11
多线程(thread) 操作系统支持多进程,进程内部使用多线程. 进程是 重量级的,拥有自己 独立的内存空间. 线程是 轻量级的,不需要拥有自己 独立的内存空间,线程的内存空间:1 ...
- Palindrome Linked List 解答
Question Given a singly linked list, determine if it is a palindrome. Follow up:Could you do it in O ...
- POJ3255--次短路
求1到N的次短路,到某个顶点v的次短路有两种可能,一是到其他某个顶点u的最短路+edge(u,v)二是到其他某个点u的次短路+edge(u,v): 因此在松弛的时候不仅要记录最短路,同时也要记录次短路 ...
- UIScrollView入门与框架设计
一.概述 1.UIScrollView的contentSize, contentOffSet, contentInsets的作用和使用. 2.UIScrollView的一整个滚动过程的生命周期(开始滚 ...
- Smart ——jiaoyou模板
<!--{foreach $vip_data as $key=>$volist}--> <!--{if $key==0 ||$key==1||$key==5||$key= ...