Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 24.10.2014 11:29:36

Дмитрий Пламенев

Frozennode admin проблемы..

Здравствуйте. Возникла такая проблема. Есть 2 модели: блок заданий, и задания блоков. Block и Task.
Одному блоку может принадлежать много заданий.
У блока есть имя и лого.
У задания есть ID блока и текст.
Модели определены так:

class Block extends Eloquent {

 public function tasks () {

    return $this->hasMany('Task');


 }

 
------------------------------------------

class Task extends Eloquent {

    public function block ()
    {
        return $this->belongsTo('Block');
    }

}

 


В админке у нас есть соотвественно 2 кнопки. Блоки и задания. В блоках все просто мы добавляем блок пишем имя и загружаем фото. В заданиях сложнее. нужно связать block_id из таблицы заданий с id их таблицы блоков. При том чтобы во вкладке задания можно было использовать поля из блоков.

'columns' => array(
    'id' => array(
        'title' => 'id',
        //'type' => 'key',        //'output' => '<img src="/uploads/homepagesliders/resize/(:value)" height="100" />',
    ),
    
    'name' => array(
        'title' => 'Имя блока',
        //'output' => '<img src="/uploads/homepagesliders/resize/(:value)" height="100" />',
    ),
  
    'img' => array(
    'title' => 'Изображение блока',
    'type' => 'image',
   // 'location' => 'public/img/block_image/',
    // 'naming' => 'keep',
     'output' => '<img src="/img/block_image/(:value)" height="100" />',

),

это в блоках

в заданиях

'columns' => array(
    
    'block_id' => array(
        'title' => 'Изображение блока',
        'type'=>'relationship',
        'name_field' => 'img',
        'select' => 'block.img',
         'output' => '<img src="/img/block_image/(:value)" height="100" />', //вывод лого блока по его id

    ),

    'text' => array(
        'title' => 'Текст задания',
        'type' => 'text',
    ),

),

связь не работает постоянно сталкиваюсь с непониманием синтаксиса админки.

Подвал раздела