當我在Yii上創建'創建'場景的新帖子時,我有兩個字段'簡短描述'和'長描述',所以當我我先點擊保存我有一條消息錯誤'簡短描述不能爲空。'併發布不保存,如果我點擊第二則後保存。 我該如何解決它?發佈沒有保存在第一次點擊,但保存在第二次點擊「保存」Yii
P.S.當我從規則中刪除這個字段後保存在第一次點擊。
array('title, price, short_description, long_description, store, in_stock', 'required', 'on'=>'general, create'),
謝謝!
怎麼我用一些擴展的textarea
'short_description'=>array(
'type'=>'textarea',
'cols'=>50,
'rows'=>10,
),
'long_description'=>array(
'type'=>'textarea',
'cols'=>50,
'rows'=>14,
),
當我更換textarea的文本字段中的所有工作好這事。
但我需要修復它,有任何想法嗎?
public function rules()
{
return array(
array('title, price, short_description, long_description, store, in_stock', 'required', 'on'=>'general, create'),
array('short_description', 'length', 'encoding' => 'UTF-8', 'max'=>256),
array('product_number, weight', 'safe', 'on'=>'general, create'),
array('price, in_stock', 'numerical', 'on'=>'general, create'),
array('price', 'numerical', 'integerOnly' => FALSE, 'min' => '0', 'on'=>'general, create'),
array('in_stock', 'numerical', 'integerOnly' => FALSE, 'min' => '0', 'on'=>'general, create'),
array('store','trialCreate','on'=>'create'),
array('status', 'safe', 'on'=>'create'),
array('meta_description, meta_keywords', 'safe', 'on'=>'meta'),
array('currentImage', 'safe', 'on'=>'image'),
array('newImage', 'file', 'allowEmpty'=>false, 'safe'=>true, 'types'=>'png, jpg, jpeg, gif', 'on'=>'image'),
array('categoryIDs', 'validateCategories', 'on'=>'categories'),
array('status', 'required', 'on'=>'status'),
array('store', 'safe', 'on'=>'search'),
);
}
認沽控制器不容易,怎麼我是用一個CRUD
所以,我用這種方式給我。我從需要的規則中刪除字段並創建了自己的規則。
array('short_description, long_description', 'validateDescription', 'on'=>'general, create'),
/**
*
*/
public function validateDescription()
{
if($this->long_description=="")
{
$this->addError('long_description', 'Long Description cannot be blank.');
}
if($this->short_description=="")
{
$this->addError('short_description', 'Short Description cannot be blank.');
}
}
現在我需要在客戶端創建驗證。 謝謝大家的關注!
您使用的textarea的延伸是什麼? – topher
我的編輯是tinyMCE –
謝謝。 '$ model-> save()'或'$ model-> create()'調用?只是爲了顯示你怎麼把'$模型 - >屬性' –