인기있는 tricks
특정 라우팅은 HTTPS 만 가능하게 하기
by river
특정 요청은 무조건 https로만 접근하게 하고자 할 때, http로 접속한 경우 https로 리다이렉트 하도록 하기 위해서 다음의 Middleware를 사용하면 된다. app/Http/Middleware/ForceHttps.php <?php namespace…
다중 DB 연결 사용하기
by river
다중 DB 설정하기 app/config/database.php <?php return array( 'default' => 'mysql', 'connections' => array( # Our primary database connection 'mysql' => array( 'driver' => 'mysql', 'host' => 'host1', 'database' => 'database1',…
blade의 @endsection 과 @stop 의 차이점
by river
@section('content') @stop blade의 섹션을 닫을 때, Laravel 3에서는 @endsection, Laravel 4에서는 @stop으로 바뀐 걸로 알고 있었는데, Laravel 5 예제 소스들에서 @endsection이 보여서 둘 간의 차이점을 찾아봤다.…
URL과 쿼리스트링 구하기
by river
http://example.com/test?foo=bar
url() // http://example.com
Request::getPathInfo() // /test
Request::url() // http://example.com/test
Request::fullurl() // http://example.com/test?foo=bar
Request::getQueryString() // foo=bar
스키마 빌더에서 컬럼 주석 사용하기
by river
스키마 작성시 comment 메서드를 사용하면 컬럼에 주석을 달 수 있다. public function up() { Schema::create('posts', function(Blueprint $table) { $table->increments('id')->comment('Unique identifier');…
날짜를 몇시간 전, 며칠 전 형태로 표시하기
by river
페이스북이나 트위터 등의 타임라인에서는 보통 등록시간을 몇분 전, 며칠 전 같은 형태로 표시를 한다. Laravel에서는 Carbon 클래스를 사용하면 쉽게 구현할 수 있다.
PasswordBroker 오버라이딩하기
by river
비밀번호 리셋에 관련된 로직은 Illuminate\Auth\Passwords\PasswordBroker 클래스에서 수행이 되는데, 이 로직을 변경하고자 한다면 다음의 방법을 사용하면 된다. CustomPassowordBroker 생성…
Laravel 프레임웍 없이 Eloquent 사용하기
by river
Laravel 프레임을 사용하지 않더라도 Eloquent ORM을 사용할 수가 있다. eloquent 설치 $ composer require illuminate/database database.php 파일 생성 <?php require 'vendor/autoload.php'; use Illuminate\Database\Capsule\Manager as…
다중 환경 설정하기
by river
개발, 스테이징, 서비스 등 Laravel 동작 환경을 여러 개로 나누고 각각의 환경에 맞게 설정을 따로 가져가는 방법을 알아보자. 1. 환경변수를 이용하는 방법 bootstrap/start.php 파일에서 환경…
리소스 네이밍 규칙
by river
네이밍은 규칙 정하기 나름이지만 다음과 같이 정하면 어떨까 한다. Model만 단수형을 사용하고, DB Table, Controller, Route, View 등은 복수형을 사용한다. 예) Task Model : Task DB Table : tasks Controller :…
timestamps 컬럼명 지정하기
by river
timestamps를 사용하는 경우 (default) created_at, updated_at, deleted_at 컬럼명이 기본인데, 다음의 방법으로 이를 변경할 수 있다. 방법 1 User extends Eloquent{ const CREATED_AT = 'registered_at'; const UPDATED_AT =…
다운타임없이 Laravel 4.1.26으로 업그레이드 하기
by river
인증시 사용되는 remember me 쿠키에 보안 문제가 생겨서 Larvel 4.1.26이 릴리즈 됐습니다. Laravel 4.1.26을 업그레이드를 하려면 패키지는 물론 User.php와 users DB 테이블을 변경해야 한다. 다음의…