[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Уроки Kohana + ZendFramework
Страницы: 1, 2
Семён
В предыдущем (5-ом уроке), наша модель выглядела следующим образом:
<?php
class
Model_Guestbook extends Model {
public function getRecords() {
return "Nothing to display";
}
}

Теперь нам потребуется извлечь информацию из БД (MySQL)
Для этого, нам нужно:
0) Создать таблицу db_records, с колонками
id - int auto_increment primary key
title - varchar 16
message - varchar 255
added_at - int 16
enabled - tinyint
Кодировка базы utf8

1) Проверить включен ли модуль Database в Ko3
2) Проверить существует ли конфигурационный файл для Ko3
3) Рассмотреть QueryBuilder на конкретном примере.

Итак п1:
Открываем файл bootstrap.php
Находим:
Kohana::modules

Раскоментируем строку:
'database'   => MODPATH.'database',   // Database access


п.2
В папке application/config создаём файл database.php
И наполняем содержанием (параметры базы настраиваем по себя):
<?php

return array
(
'default' => array
(
'type' => 'mysql',
'connection' => array(
'hostname' => 'localhost',
'username' => 'root',
'password' => '',
'persistent' => FALSE,
'database' => 'records',
),

'table_prefix' => 'db_',
'charset' => 'utf8',
'profiling' => TRUE,
),
);


?>


Возвращаемся к нашей модели:
Изменим её на вид:
<?php
class
Model_Guestbook extends Model {
public function getRecords() {
return DB::select()->from("records")->execute();
}
}


Открываем наш шаблон (В папке application/views/guestbook/ открываем файл view.php)
и меняем его на:
<div>Status: <b><?=$welcome;?></b></div>
<
h1>Records:</h1>
<? if(!empty($content)) : ?>
<?
foreach($content as $record): ?>
<div style="margin:20px;">
<
b><?=$record['title'];?></b>
<
div><?=$record['message'];?></div>
</
div>
<? endforeach; ?>
<?
else: ?>
Not found any records in Database
<? endif; ?>


Добавляем ручками пару записей в табличку.
Проверяем, радуемся.

п.3
Ради интереса можно посмотреть, как строятся запросы в QB:
http://kohanaframework.org/3.1/guide/database/query/builder
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.