как удалить несколько строк с помощью флажка в yii2

Как я могу использовать в GridView удалить выбранный объект в Yii 2 Framework, например, следующее изображение:

введите здесь описание изображения

[введите описание изображения здесь] [2]


person Hothi Jimit    schedule 20.05.2016    source источник


Ответы (4)


Попробуй это

<?=Html::beginForm(['controller/bulk'],'post');?>
<?=Html::dropDownList('action','',[''=>'Mark selected as: ','c'=>'Confirmed','nc'=>'No Confirmed'],['class'=>'dropdown',])?>
<?=Html::submitButton('Send', ['class' => 'btn btn-info',]);?>
<?=GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
['class' => 'yii\grid\CheckboxColumn'],
'id',
],
]); ?>
<?= Html::endForm();?> 

Это контроллер:

public function actionBulk(){
    $action=Yii::$app->request->post('action');
    $selection=(array)Yii::$app->request->post('selection');//typecasting
    foreach($selection as $id){
        $e=Evento::findOne((int)$id);//make a typecasting
        //do your stuff
        $e->save();
    }
    }

Или еще

Следуйте всем шагам, указанным в этой ссылке, вы обязательно достигнете своей цели. Yii 2: как массово удалить данные в картик сетка?

https://stackoverflow.com/questions/27397588/yii-2-how-to-bulk-delete-data-in-kartik-grid-view/
person vijay nathji    schedule 23.05.2016
comment
одна проблема заключается в том, что изображение не отображается :( Я прошу одну вещь yii2 advanced не давать разрешение на доступ к изображению в образе внутреннего каталога напрямую ??? - person Hothi Jimit; 23.05.2016
comment
Используйте веб-каталог для загрузки изображения. $ img = Url :: to ('@ web / uploads / PROJECT /').$ img_obj [' AVATAR ']; $ image = '‹img src ='. $ img. ' ширина = 600 / ›'; ‹Img src =‹? = Yii :: $ app- ›request-› baseUrl. '/ бэкэнд / веб / загрузки /'. $ model- ›profile_photo?› class = img-responsive ›‹? php echo Html :: img ('@ web / img / icon.png', ['class' = ›'pull-left img-responsive']); ? › - person vijay nathji; 23.05.2016
comment
как удалить несколько строк с помощью флажка в yii2, эта проблема не может быть решена, пожалуйста, помогите - person Hothi Jimit; 24.05.2016
comment
с какими проблемами вы сталкиваетесь ?? Пожалуйста, сообщите сообщение об ошибке. - person vijay nathji; 24.05.2016
comment
как удалить несколько строк с помощью флажка в yii2 проблема решить ho gaya bro спасибо @vijay bhai - person Hothi Jimit; 24.05.2016
comment
Ваах .. Отличный бхаи, наслаждайся :) - person vijay nathji; 24.05.2016
comment
или более одного вопроса, концепция parent_id, я могу использовать, чтобы я мог, например, bifergat подкатегорию (abc - это подкатегория категории xyz, я хочу подкатегорию abc- ›xyz) любую идею об этом ??? - person Hothi Jimit; 24.05.2016
comment
Да, создайте новый вопрос С помощью кнопки «Задать вопрос» я объясню им ваш запрос .. Не забудьте отметить меня .. спасибо - person vijay nathji; 24.05.2016
comment
Ошибка отображения изображения vijay bhai == ›myshorter.tk/123/image%20issue.png - person Hothi Jimit; 24.05.2016
comment
вы проверили PAth и используемый псевдоним ?? - person vijay nathji; 24.05.2016
comment
yiiframework.com/wiki/667/, что все псевдонимы yii2 проверяют каждый раз одну и ту же ошибку, но при установке постоянного URL-адреса в этот раз работает - person Hothi Jimit; 24.05.2016
comment
виджай бхаи адж ответ нахи кия - person Hothi Jimit; 25.05.2016
comment
Ставлю тебе ошибку. Я не получаю проблемы с Axact .. Это для отображения изображения в сетке или где-то еще ?? - person vijay nathji; 26.05.2016
comment
woh sab ho gaya bhai sirf naya naya yii2 project pe kaam kar rahu isliye thoda sikhne me time lagta hey: P - person Hothi Jimit; 26.05.2016
comment
Вы очень хорошо учитесь. Так держать, чувак. :) Попытайтесь начать изучать, как использовать расширения .. Виджеты Kartik и сетка очень хороши и очень полезны для вас. - person vijay nathji; 26.05.2016
comment
nahi bhai codeigniter me work karna aacha lagta эй сравните с yii2 - person Hothi Jimit; 26.05.2016
comment
yii-jui не устанавливает свою ошибку выдачи yiisoft / yii2-jui 2.0.0 требует bower-asset / jquery-ui 1.11.*@stable - ›соответствующий пакет не найден. как я могу это исправить ??? - person Hothi Jimit; 26.05.2016
comment
Задать новый вопрос даст ансер там - person vijay nathji; 26.05.2016
comment
найя вопрос пост нахи кар па раха ху граммер ошибка ки ошибка аа рахи эй - person Hothi Jimit; 26.05.2016
comment
нажмите кнопку «Задать вопрос». 1) Сначала напишите описание проблемы. 2) затем поставьте под вопрос вашу ошибку. - person vijay nathji; 26.05.2016
comment
вопрос ab ja ke post huwa - person Hothi Jimit; 26.05.2016

Вы можете использовать столбец с флажками и массовыми действиями для каждой выбранной строки.

Вот связанный с этим вопрос:

Yii2 Как правильно создать столбец флажков в gridview для массовых действий?

person WeSee    schedule 22.05.2016

введите здесь описание изображения

<?php
$url = Url::to(['user/delete']);
$this->registerJs('
     $(document).on("click", "#delete_btn",function(event){
     event.preventDefault();
       var grid = $(this).data(\'grid\');
        var Ids = $(\'#\'+grid).yiiGridView(\'getSelectedRows\');
        var status = $(this).data(\'status\');
        if(Ids.length > 0){
        if(confirm("Are You Sure To Delete Selected Record !")){
              $.ajax({
                type: \'POST\',
                url :  \''.$url.'\' ,
                data : {ids: Ids},
                dataType : \'JSON\',
                success : function($resp) {
                if($resp.success){
                 alert(resp.msg);
                }
                }
            });
        }
        }else{
        alert(\'Please Select Record \');
}
    });
    ', \yii\web\View::POS_READY);
?>


  [1]: http://i.stack.imgur.com/iFjT1.png
person Bharoo Jangid    schedule 22.05.2016
comment
Этот ответ может работать, но уязвим для атаки csrf. - person Eslam Sameh Ahmed; 24.12.2018

Мне удалось удалить несколько строк в gridview Yii2, выполнив следующие действия:

  1. Создать кнопку в index.php

    <p> <button type="button" onclick="getRows()" class="btn btn-success">Delete Bulk</button> </p>

  2. Добавьте код javascript в index.php, чтобы выполнить событие получения проверенных строк из виджета GridView.

    <script> function getRows() { //var user_id as row_id from the gridview column // var list = [] is an array for storing the values selected from the //gridview // so as to post to the controller. var user_id; var list = []; //input[name="selection[]"] this can be seen by inspecting the checkbox from your //gridview $('input[name="selection[]"]:checked').each(function(){ user_id = this.value; list.push(user_id); }); $.ajax({ type: 'post', url:'index.php?r=student-detail-update/bulk', data: {selection: list}, }); } </script>

  3. Поместите этот код в свой контроллер

    if ($selection=(array)Yii::$app->request->post('selection')) { foreach($selection as $id){ $StudentDetailUpdates = StudentDetailUpdate::find() ->where(['user_id' => $id]) ->all(); //....put your staff here }

person emanuel sabali    schedule 15.03.2019