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 ...
随机推荐
- Android开发重修
Android程序开发的重新学习 #####Mars课程学习笔记20140926 1.Service主要用于完成耗时较长的操作,没有图形化界面. 2.Content Provider数据的提供者,是A ...
- 关于Django模板渲染一个很重要的用途
一般情况下我们在模板利用django的for标签循环生成html代码时,可以同时生成形如: "{% url 'dormitory:hygiene_detail' pk={{ id }} %} ...
- 继续畅通工程--hdu1879
继续畅通工程 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- C语言之利用递归将十进制转换为二进制
#include<stdio.h>#include<stdlib.h>void change2(int num){ if (num != 0) { change2(n ...
- 观《Terminal》之感
读书笔记系列链接地址http://www.cnblogs.com/shoufengwei/p/5714661.html. 经人推荐,用了几天时间欣赏了这部斯皮尔伯格导演的电影<Te ...
- SVN取消记住密码
百度上面找的,SVN取消记录密码的方法: 找到这个文件夹首先需要在文件夹选项里面,显示所有的文件和文件夹,不能隐藏. SVN取消记住用户名的方法 打开C:\Documents and Settings ...
- 转:SVN 出现This client is too old to work with working copy...错误
本地进行SVN客户端版本更新,但是之前一些代码是用的旧svn客户端提交的,这时候进行代码更新或者提交代码可能会出现错误,我这边是NetBeans中提交代码就出现了以下错误:This client is ...
- c++中经常需要访问对象中的成员的三种方式
可以有3种方法: 通过对象名和成员运算符访问对象中的成员; 通过指向对象的指针访问对象中的成员; 通过对象的引用变量访问对象中的成员. 一.通过对象名和成员运算符访问对象中的成员 例如在程序中可以写出 ...
- poj 3180 The Cow Prom(tarjan+缩点 easy)
Description The N ( <= N <= ,) cows are so excited: it's prom night! They are dressed in their ...
- MooseFS源代码分析(三)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/ ...