public function actionCreate()
{
if($model->load(Yii::$app->request->post() && $model->save()){
// заполняете flash сообщение и делаете редирект
}
else{
return $this->render('create', ['model' => $model')
}
}
SELECT * FROM table1 WHERE DATE(timestamp_field) = '2017-10-09';
public function events()
{
return [
ActiveRecord::EVENT_BEFORE_INSERT => 'onBeforeSave',
ActiveRecord::EVENT_BEFORE_UPDATE => 'onBeforeSave',
];
}
class MyModel extends \yii\base\Model
{
public $myAttributeLabels = [];
public function attributeLabels()
{
$labels = [
'attributeName' => 'Attribute Label';
];
return array_merge($this->myAttributeLabels, $labels);
}
}
class MyBehavior extends \yii\base\Behavior
{
public function attach($owner)
{
$owner->myAttributeLabels = [
'attributeName' => 'Attribute Label'
];
}
}
public function attributeLabels()
{
return ArrayHelper::merge(parent::attributeLabels(),[
'newPassword' => 'Новый пароль',
'newPasswordRepeat' => 'Повторить новый пароль'
]);
}
public function attach($owner)
{
parent::attach($owner);
$validator = \yii\validators\Validator::createValidator('safe', $owner, 'new_tags');
$owner->validators[] = $validator;
}
$owner->setAttribute('some_attribute', 'some_attribute')
public function getVideos()
{
return $this->owner->hasMany($this->className, [$this->attribute => 'id'])->where([/* тут Ваше условие */]);
}
$dataProvider = new ActiveDataProvider([
'query' => $query,
'sort'=> [
'attributes' => [
'age',
'name' => [
'asc' => ['first_name' => SORT_ASC, 'last_name' => SORT_ASC],
'desc' => ['first_name' => SORT_DESC, 'last_name' => SORT_DESC],
'default' => SORT_DESC,
'label' => 'Name',
],
],
]);
Предполагаю, что нужно создать новое свойство в ProductsSearch и каким то образов вставлять его значение в defaultSort.
[
'name' => 'name от а до я',
'-name' => 'от я до а',
'price' => 'price по возрастанию',
-'price' => 'price по убыванию'
]
Естественно отношения друг на друга у моделей выставлены.
$user_id = 167;
$query = Product::find()->joinWith(['order.user'=>function($query) use ($user_id) {
return $query->where(['user.id'=>$user_id]);
}]);
$dataProvider = new ActiveDataProvider([
'query' => $query
]);