2015-01-21 2 views
0

저는 학습 Yii2 프레임 워크 (Yii2의 고급 버전 설치)에서 새로운 것입니다. 현재 톱 메뉴 (홈/정보/연락처 등)로 "스탠드 아트"프런트 엔드를 운영 중입니다. . main.php 추가 메뉴 섹션에Yii2 - 페이지 경로 지정 방법

추가 : 나는 상단 메뉴 추가 섹션 고급 문의 양식을 표시하고 (예를 들어, "고급 연락 '에 추가 할 그래서

, 나는 다음을 수행 한

$menuItems = [ 
       ['label' => 'Home', 'url' => ['/site/index']], 
       ['label' => 'About', 'url' => ['/site/about']], 
       ['label' => 'Contact', 'url' => ['/site/contact']], 
       ['label' => 'Advanced Contact', 'url' => ['/site/advancedcontact']] 
      ]; 

동일한 폴더에 advancedcontact.php로 ContactPage보기 (contact.php)을 복사.

그러나

링크를 누른 후 나는 메시지

,536 무엇입니까

을 찾을 수 없음 (# 404) 요청을 해결할 수 없음 : site/advancedcontact

이 오류를 해결하려면 어떻게해야합니까?

+0

컨트롤러 코드를 추가/사이트/고급 접촉을 할 필요가

/** * Advanced Contact Form action * * Renders the advanced contact page and processes any form submissions. * * @return string Rendering result */ public function actionAdvancedcontact() { $model = new ContactForm(); if ($model->load(Yii::$app->request->post()) && $model->validate()) { if ($model->sendEmail(Yii::$app->params['adminEmail'])) { Yii::$app->session->setFlash('success', 'Thank you for contacting us. We will respond to you as soon as possible.'); } else { Yii::$app->session->setFlash('error', 'There was an error sending email.'); } return $this->refresh(); } else { return $this->render('advancedcontact', [ 'model' => $model, ]); } } 

참고. – arogachev

+0

복사 및 붙여 넣기는 나쁜 습관입니다. – TNC

답변

1

컨트롤러의 기능을 복사 했습니까? 프론트 엔드/컨트롤러/SiteController.php에서 이런 식으로해야합니다. 당신이 actionAdvancedContact에 함수 이름을 변경하는 경우 다음 경로가

+0

답변 해 주셔서 감사합니다. 예, actionAdvancedcontact()를 추가했습니다. 문제는 "고급 연락처"("고급 연락처"가 아님)에있었습니다. – MaksimK