Можно ли редактировать стиль таблицы на основе значений в таблице?[Рюкзак-Laravel] - PullRequest
0 голосов
/ 28 мая 2019

Я создаю приложение в Laravel с грубыми страницами.На одной странице мне нужно иметь визуальную подсказку, когда 2 объекта базы данных связаны между собой.У меня есть пользователь и карта.На странице crud показаны все карточки, и мне нужно, чтобы карточки с существующим отношением карточка / пользователь имели какой-то дополнительный стиль, чтобы выделиться.

Я читал о редактировании стандартных функций сохранения и обновления, но это не совсем то, чтоя ищу.На данный момент моя страница работает только с crudcontroller, моделью и маршрутом.

Функциональный тест - это тот, который выбирает карты, которые должны иметь другой стиль.Это crudcontroller:

public function setup()
{
    // get the user_id parameter
    $usid= \Route::current()->parameter('usid');
    $this->crud->setModel('App\Models\Koppel');
    $this->crud->setRoute(config('backpack.base.route_prefix').'/users/'.$usid.'/koppel');
    $this->crud->setEntityNameStrings('koppel', 'koppels');

    $this->crud->denyAccess('update');
    $this->crud->denyAccess('delete');
    $this->crud->removeButton('create');
    $this->crud->addButtonFromView('line', 'confirm', 'confirm', 'end');
    $this->crud->addButtonFromView('line', 'remove', 'remove', 'end');
    $this->crud->addButtonFromView('line', 'test', 'test', 'end');

    //Columns
    $this->crud->addColumn(['name' => 'name', 'type' => 'text', 'label' => "Card"]);

    // add asterisk for fields that are required in KoppelRequest
    $this->crud->setRequiredFields(StoreRequest::class, 'create');
    $this->crud->setRequiredFields(UpdateRequest::class, 'edit');
}

public function store(StoreRequest $request)
{
    // your additional operations before save here
    $redirect_location = parent::storeCrud($request);
    // your additional operations after save here
    // use $this->data['entry'] or $this->crud->entry
    return $redirect_location;
}

public function update(UpdateRequest $request)
{
    // your additional operations before save here
    $redirect_location = parent::updateCrud($request);
    // your additional operations after save here
    // use $this->data['entry'] or $this->crud->entry
    return $redirect_location;
}

public function confirm($usID, $kID)
{
    //link card to user by making card_user object
    $koppel = \App\CardUser::updateOrCreate(['card_id' => $kID, 'user_id' => $usID]);

    return Redirect::back();
}

public function remove($usID, $kID)
{
    //find card_user with user_id and card_id then remove link
    $deletedRows = \App\CardUser::where(['card_id' => $kID, 'user_id' => $usID])->delete();

    return Redirect::back();
}

public function test($usID, $kID)
{
    $cardID= \App\CardUser::where('user_id', $usID)->pluck('card_id')->toArray();
    foreach ($cardID as $object) {
      $card = \App\Card::where('id', $cardID)->get();
      //change style for every $card
    }

    return Redirect::back();
}

Это модель:

class Koppel extends Model
{
  use CrudTrait;

  protected $table = 'instructiekaarten';
  public $timestamps = true;
  protected $fillable = ['name'];
}

Мне нужно знать, возможно ли изменить стиль некоторых записей crud (предположительно, до загрузки страницы) на основена моей функции.Мне также нужно знать, куда поместить мою функцию, чтобы запустить ее до загрузки страницы.«Изменение стиля» - это что-то вроде зеленого цвета некоторых записей, а остальных - серого.

...