Всем привет.
Думаю без разницы какой фраемворк использую, а вообще
ko7,
kohana.
Сделал фотогалерею, фото добавляются, в бд все есть, но не могу вывести на фронт в фотогалерея.
Знания не большие, еще учусь, делал по примеру других контроллеров, где есть вывод фото.
Структура бд, таблица фотогалереи fotogalerejas.
Поля:
id - айди фотогалереи
images_id - айди фотки
Структура таблицы images, тут хранится название фото, плюс позиции.
Поля:
id - айди фотки
image - сюда записывается название картинку
pos - это позиция фоток
fotogalereja_id - айди фотогалереи
Скрин таблицы fotogalerejas
Скрин таблицы images(ненужное скрыл)
Контроллер фотогалерея
$id = (int)$this->request->param('id', '=', '1');
$fotogalerejas = ORM::factory('Fotogalereja')->find_all();
$images = ORM::factory('Image')
->where('fotogalereja_id', '=', $id)
->find_all();
$content = View::factory('index/main/fotogalereja')
->set('fotogalerejas', $fotogalerejas)
->set('images', $images);
Вывод в шаблоне
<? foreach ($fotogalerejas as $fotogalerejas) : ?>
<?php echo $fotogalerejas->images->image ?>
<?php echo $fotogalerejas->image_id ?>
<? endforeach ?>
Вывожу id фотки ( <?php echo $fotogalerejas->image_id ?>), это для примера, чтоб понять что все ок, айди выводит.
Пытаюсь вывести картинку <?php echo $fotogalerejas->images->image ?> пока ничего.
В модельке fotogalereja у меня вот что
class Model_Fotogalereja extends ORM
{
protected $_table_name = 'fotogalerejas';
protected $_primary_key = 'id';
protected $_db_group = 'default';
protected $_has_many = array(
'images' => array(
'model' => 'Image',
'foreign_key' => 'fotogalereja_id',
),
);
protected $_belongs_to = array(
'main_img' => array(
'model' => 'Image',
'foreign_key' => 'image_id',
),
);
}
Как я понимаю вот эту часть кода.
1) $images = ORM::factory('Image')
2) ->where('fotogalereja_id', '=', $id)
3) ->find_all();
1) подгружаем таблицу из бд images/
2) находим в images таблице поле fotogalereja_id с id 1, это айди фотогалереия
3) выводим все что нашли.