Laravel 5.1 프레임 워 크 모델 생 성 및 사용 방법 인 스 턴 스 분석

5136 단어 Laravel5.1모형.
본 고 는 Laravel 5.1 프레임 워 크 모델 의 생 성과 사용 방법 을 실례 로 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
Laravel 의 모델 도 데이터 베 이 스 를 방문 하 는 것 입 니 다.대상 을 더욱 대상 으로 합 니 다.하나의 모델 은 표 에 대응 합 니 다.우 리 는 모델 로 데 이 터 를 삭제 하고 검사 할 수 있 습 니 다.
1.모델 만 들 기
모델 을 만 드 는 것 은 Artisan 콘 솔 을 사용 할 수 있 습 니 다:

php artisan make:model Article

일반적으로 나 는 migration 과 함께 생 성 하 는 것 을 비교적 좋아한다.

php artisan make:model Article -m

↑위의 Artisan 명령 을 실행 한 후에 우 리 는/app 에서 우리 가 방금 만 든 모델 을 찾 을 수 있 고 migration 도 생 성 할 수 있 습 니 다.
2 모델 상용 속성
2.1 사용자 정의 테이블 이름
하나의 model 은 하나의 표 에 대응 합 니 다.model 에 대응 하 는 표 이름 은 기본적으로 model 이름 의 복수 입 니 다.즉,Article(Model)은 Articles(Table),User(Model)는 Users(Table)에 대응 합 니 다.
물론 모델 이 이러한 기본 방식 을 사용 하지 않 으 려 면 사용자 정의 할 수 있 습 니 다.

class Article extends Model
{
  protected $table = 'K_Articles';
}

2.2 사용자 정의 메 인 키
Model 의 메 인 키 는 기본적으로 id 입 니 다.사용자 정의 할 수 있 습 니 다.

class Article extends Model
{
  protected $primaryKey = 'article_id';
}

2.3 타임 스탬프
우리 데이터 시트 에 create 가 있 습 니 다.at 와 updateat 두 시간 스탬프 는 Laravel 에서 자동 으로 관리 합 니 다.이 두 열 을 자동 으로 관리 하지 않 으 려 면 이렇게 할 수 있 습 니 다.

class Article extends Model
{
  public $timestamps = false;
}

2.4 화이트 리스트 와 블랙 리스트
대량 생 성과 대량 수정 을 사용 할 때 블랙리스트 나 화이트 리스트 를 밝 혀 야 합 니 다.화이트 리스트 의 속성 은 채 울 수 있 는 속성 이 고 블랙리스트 의 속성 은 채 울 수 없 는 속성 입 니 다.

class Article extends Model
{
  protected $fillable = ['title', 'body'];
}

주의:어떻게 사용 해 야 할 지 모 르 겠 어 요.괜찮아 요.3.2.대량 생 성 이 라 고 할 거 예요.
3.데이터 생 성(모델)
모델 을 만 드 는 데 는 두 가지 방법 이 있 습 니 다.첫 번 째 는 일반적인 생 성 이 고 두 번 째 는 대량으로 만 드 는 것 입 니 다.
3.1 일반 생 성 모델
일반 생 성 은 새 모델 입 니 다:

  public function getCreateArticle()
  {
    $article = new Article();
    $article->title = 'One';
    $article->body = 'Learn Laravel Model';
    $article->save();
  }

3.2 대량 생 성
대량 할당 은 create 방법 으로 model 을 만 들 고 새로 삽 입 된 model 을 되 돌려 주 는 것 입 니 다.create 를 사용 하기 전에 model 에서 블랙리스트 나 화이트 리스트 를 밝 혔 는 지 확인 해 야 합 니 다.

class Article extends Model
{
  protected $fillable = ['title', 'body'];
}

↑저희 화이트 리스트 입 니 다.

  public function getCreateArticle()
  {
    $article = Article::create(['title'=>'Two', 'body'=>'Test Create Model', 'comment_count'=>10]);
  }

↑이것 은 대량 생 성 모델 입 니 다.세부 사항 이 있 습 니 다.fillable 에 comment 를 추가 하지 않 았 습 니 다.count 하지만 create 방법 에 있 는 배열 은 commentcount 의 키 값...결 과 는 commentcount 가 채 워 지지 않 은 이 유 는 화이트 리스트 에 없 거나 블랙리스트 에 있 기 때 문 입 니 다.
업데이트
업데이트 와 삽입 이 비슷 하고 일반적인 방법 과 대량 방법 도 두 가지 가 있 습 니 다.
4.1 일반 업데이트

  public function getUpdateArticle()
  {
    $article = Article::find(1);
    $article->title = 'Article_One';
    $article->save();
  }

4.2 대량 업데이트

  public function getUpdateArticle()
  {
    $article = Article::find(3);
    $article->update(['title' => 'Three', 'body' => 'Third']);
  }
5 찾기
사실 모델 의 검색 은 이전에 우리 가 배 웠 던 구축 기와 매우 비슷 하 다.
5.1 모든 모델 가 져 오기

  public function getIndex()
  {
    $articles = Article::all();
    foreach ($articles as $article) {
      echo $article->title . '<br />';
      echo $article->body . '<br />';
    }
  }

5.2 단일 모델 가 져 오기
find 를 사용 하여 홈 키 로 찾기:

  public function getIndex()
  {
    $article = Article::find(1);
    dd($article->body);
  }

우리 도 Model 을 찾 았 는 지 아 닌 지 를 판단 할 수 있다.

  public function getIndex()
  {
    $article = Article::find(2);
    if (!isset($article)){
      abort(404,'Not Found');
    }
    dd($article);
  }

값 을 얻 지 못 하면 자동 으로 오 류 를 보고 하고 이 장면 에 대응 할 때 findOrFail 을 사용 할 수 있 습 니 다.

  public function getIndex()
  {
    $article = Article::findOrFail(2);
    dd($article);
  }

5.3 제약 을 통 해 모델 가 져 오기
이것 이 바로 빌 더 와 비슷 한 부분 입 니 다.빌 더 를 제약 하 는 것 처럼 제약 할 수 있 습 니 다.예 를 들 어 보 겠 습 니 다.

  public function getIndex()
  {
    $article = Article::where('id','>',2)->orderBy('comment_count','desc')->lists('title')->toArray();
    dd($article);
  }

먼저 이렇게 많이 쓰 고 다음 편 에 서 는 모델 의 삭제 기능 에 대해 이야기 합 니 다.
Laravel 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있다.
본 고 는 Laravel 프레임 워 크 를 바탕 으로 하 는 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기