Yii Framework Forum: تریس Loadmodel - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

تریس Loadmodel

#1 User is offline   Manee 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 103
  • Joined: 23-September 12

Posted 02 March 2013 - 11:54 PM


این تکه کدی که داخل پست کنترلر هستش با توجه به اسمش انگار داره یه مدل رو فراخانی میکنه

	public function actionView()
	{
		$post=$this->loadModel();
		$comment=$this->newComment($post);

		$this->render('view',array(
			'model'=>$post,
			'comment'=>$comment,
		));
	}


ولی تو همین فایل به این صورت تعریف شده:

	public function loadModel()
	{
		if($this->_model===null)
		{
			if(isset($_GET['id']))
			{
				if(Yii::app()->user->isGuest)
					$condition='status='.Post::STATUS_PUBLISHED.' OR status='.Post::STATUS_ARCHIVED;
				else
					$condition='';
				$this->_model=Post::model()->findByPk($_GET['id'], $condition);
			}
			if($this->_model===null)
				throw new CHttpException(404,'The requested page does not exist.');
		}
		return $this->_model;
	}

0

#2 User is offline   Shahcheraghean 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 478
  • Joined: 12-December 12
  • Location:Mashhad, IRAN

Posted 03 March 2013 - 12:46 AM

آیا در این رابطه سوالی یا مشکلی دارید؟

www.shgn.ir
www.shgn.ir/yii-framework/
yii2.swsco.ir
In a world without any fences or walls,Who needs Gates or Windows!
0

#3 User is offline   Manee 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 103
  • Joined: 23-September 12

Posted 03 March 2013 - 04:08 AM


ممنون. مشکل اینه که اینی که گفتم یعنییی چه!!
مخصوصا جایی که نوشته :

 $this->render('view',array(
                        'model'=>$post,
                        'comment'=>$comment,
                ));

این میاد متغیر پست رو به صورت آرگومان حالا میفرسته برای فایل ویو و بقیه موارد
چرا لود مدل نوشته؟ این مگه نمیاد تایپگهایی که منتشر شده و یا آرشو هستش رو پیدا میکنه؟

0

#4 User is offline   mereeelin 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 42
  • Joined: 29-October 11

Posted 03 March 2013 - 04:33 AM

View PostManee, on 02 March 2013 - 11:54 PM, said:


این تکه کدی که داخل پست کنترلر هستش با توجه به اسمش انگار داره یه مدل رو فراخانی میکنه

	public function actionView()
	{
		$post=$this->loadModel();
		$comment=$this->newComment($post);

		$this->render('view',array(
			'model'=>$post,
			'comment'=>$comment,
		));
	}


ولی تو همین فایل به این صورت تعریف شده:

	public function loadModel()
	{
		if($this->_model===null)
		{
			if(isset($_GET['id']))
			{
				if(Yii::app()->user->isGuest)
					$condition='status='.Post::STATUS_PUBLISHED.' OR status='.Post::STATUS_ARCHIVED;
				else
					$condition='';
				$this->_model=Post::model()->findByPk($_GET['id'], $condition);
			}
			if($this->_model===null)
				throw new CHttpException(404,'The requested page does not exist.');
		}
		return $this->_model;
	}







salam dooste aziz .
darmorede $post=$this->loadModel(); bayad begam ke hameye model ha in function ro daran va bar asase niyazeshoon azash estefade mikonan , va shooma ham baraye inke betoonid dar view commenthaye in post ro bebinid niyaz darid ke aval objecte poste morede nazar ro load konid va az roye oon commentharoo peyda konid .
ke albae dakhele khoode loadModel() chand ta shart ro ham check mikone ke masalan aya user sabt shoode ast ya kheyr va bar asase un mataleb ro neshoon mide .
1

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users