2014-01-08 2 views
0

에 조인 테이블의 colums에 대한 유효성 검사 규칙을 만들어이 CakePHP의 두 테이블 (조리법과 재료) 사이에 hasAndBelongsToMany의 연관을 가지고 연결 테이블 (ingredients_recipes)에 합류했다.CakePHP의

ingredients_recipes 표는 제조법에 대한 성분의 값을 저장하기 위해 금액의 콜 럼을 가지고 있지만 내가 어디에서 어떻게 그 콜 럼에서 숫자 만 허용에 대한 유효성 검사 규칙을 만들 잘 모릅니다.

나는 이미 여기에서 그리고 문서에서 본다 그러나 나는 아무것도 발견하지 않았다.
좀 더 자세한 정보가 필요하면 당신은 조인 테이블에 추가 필드를 저장하는 경우 나
Thnks

+0

당신이 게시물에서 검증을 얘기하는 겁니까? 그렇다면 http://book.cakephp.org/2.0/en/models/data-validation.html – Braunson

+0

을 확인하십시오. http://stackoverflow.com/a/5795717/1239506 –

답변

1

을 알려 주시기 바랍니다, 당신은 오히려 hasAndBelongsToMany의, CakePHP의보다 명시 적으로 조인 테이블을 처리해야합니다 배후의 조인 테이블을 처리하므로 유효성 검사 규칙은 ingredients_recipes에 있어야합니다.

이 유형의 관계는 hasManyThrough로 알려져 있으며 기본적으로 hasMany ingredients_recipes와 ingredients_recipes에는 많은 재료가 포함되어 있습니다.

http://book.cakephp.org/2.0/en/models/associations-linking-models-together.html#hasmany-through-the-join-model

0

Recipe.php 및 Ingredient.php 모델에서 유효성 검사 규칙 만들기, 예는 다음과 같습니다 :

1 단계 : 오픈 Ingredient.php

2 단계 : 편집 Ingredient.php

Class Ingredient extends AppModel{ 
    var $name = 'Ingredient'; 
    public $validate = array(
     'ingredients_recipes' => array(
     'rule' => 'numeric', 
     'message' => 'Please supply the number of ingredients recipes.' 
     ) 
    ); 
} 

3 단계 : 코드를 저장하고 실행하십시오.

귀하의 성분 모델은 숫자 와다에 대해 ingredients_recipes의 유효성을 검사하고 실패 할 경우 "메시지"를 반환합니다.

동일한 방식으로 다른 모델에 대해 여러 유효성 검사 규칙을 만들 수 있습니다. 이 타이밍

:이 데이터베이스에 삽입하기 전에 http://book.cakephp.org/2.0/en/models/data-validation.html