CakePHP의 양식에 이상한 문제가 있습니다. 양식에서 가져온 데이터를 Booking
모델에 저장하려고합니다. 일부 연락처 데이터, 메시지, 전화 번호 및 이메일 주소, 표준 항목. 데이터가 게시되고 난CakePHP : 존재하지 않는 필드에 대한 유효성 검사 오류 받기
$this->Booking->save ($this->request->data);
를 통해 저장하려고하지만 저장하려고로,이 개 필드는 검증을 전달하고 저장 프로세스를 중지하지 않습니다 phone_buyer
및 carsign
을.
이상한 점은이 두 필드가 내가 저장하려고하는 양식의 일부가 아니라는 것입니다. 예상대로 그들은 $this->data
에 표시되지 않습니다 :
$ this-> 요청 -> 데이터 :
array(
'Booking' => array(
'question' => 'Lieber Vermieter,
ich würde gerne im angegebenen Zeitraum auf deinem Parkplatz parken. Ist das möglich? Ich freue mich auf deine Rückmeldung.
Liebe Grüße',
'start_date' => '30.10.2014',
'end_date' => '30.10.2014',
'sellerid' => '294',
'buyerid' => '301',
'parkid' => '10468',
'status' => 'Angebot',
'answer' => 'Blserntesn7x6 u fcgt c c ',
'ppemail_seller' => '*email*',
'phone_seller' => '0532732123',
'acceptrules' => '1',
'acceptrules2' => '1',
'id' => '1012'
)
)
... 그리고 그들은 내가 중, 제출하고 양식의 일부가 아닙니다. 그들은 페이지의 다른 형태조차도 가지고 있지 않습니다. 그러나 그들은 데이터베이스의 필드로 존재하고 모델에서 유효성 검사 규칙이 있습니까 :
Booking.php (모델) :
class Booking extends AppModel {
public $validate = array(
//(...)
'phone_seller' => array (
'rule' => array ('notEmpty'),
'message' => 'Damit dich der Mieter kontaktieren kann, brauchst du eine Telefonnummer.'
),
'ppemail_seller' => array (
'rule' => array ('notEmpty'),
'message' => 'Um das Geld der Miete zu empfangen, benötigst du ein PayPal-Konto.'
),
// These two are giving me headaches:
'carsign' => array(
'required' => array(
'rule' => array('notEmpty'),
'required' => false,
'message' => 'Du brauchst ein Autokennzeichen, um den Parkplatz zu buchen.'
)
),
'phone_buyer' => array(
'required' => array(
'rule' => array('notEmpty'),
'required' => false,
'message' => 'Damit dich der Vermieter kontaktieren kann, brauchst du eine Telefonnummer.'
)
)
);
}
그러나 설명서에 따라 내가 지금까지 읽은 notEmpty 규칙은 해당 필드가 제출 된 양식의 일부가 아닌 경우 아무 것도 수행하지 않아야합니다. 확실히 required=>false
을 추가했지만 여전히 오류가 발생합니다. 도움을 주셔서 대단히 감사합니다. 미리 감사드립니다. :) 죄송합니다. 이해하기 어려운 것이 있으면 영어가 제 모국어가 아닙니다.
는 업데이트 : 제안
감사합니다, 나는 문제를 발견했다. 나는 아래 답변에 그것을 썼다.
그래서 어디서'phone_buyer'와'carsign'을 설정합니까? 컨트롤러 작업에서 설정하고 무엇인가 잘못되었을 때 저장을 중지하고 싶습니다. – gmponos
'phone_buyer'와'carsign'는 다른 액션에서 설정되고이 컨트롤러 액션이나 뷰에는 나타나지 않습니다. 모델이 값이없는 필드를 저장하려고하므로 저장에 실패합니다. –