Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 01 дек 2020, 16:43

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 10 май 2013, 20:14 
Не в сети
Новичок

Зарегистрирован: 06 мар 2013, 00:11
Сообщения: 29
Вы всегда можете Скачать БЕСПЛАТНО последнюю версию http://norshopcms.ru/download пользоваться
Буду рад Комментарии и предложение


Возможности и функционал NorShopCMS интернет магазина
Привлекательный и адаптивный дизайн сайта и админки Bootstrap от Twitter'а http://twitter.github.com/bootstrap/

    Многоуровневый каталог товаров
    Скрол товаров
    Поиск товаров (по названию, описанию и по артикулу)
    Автозаполнения для поиска товаров(Jquery UI)
    фильтр по ценам товаров
    Корзина товаров (Добавление в корзину AJAX)
    Регистрация и Авторизация пользователей
    Профиль пользователей
    Оформление заказов
    Способы доствака (Самовывоз и курером)
    Обратная связь
    Баннеры слойд шоу в главной странице
    Поддержка SEO заголовки и мета

Панель администратора
    Визуальный редактор TinyMCE и два вариантов менеджер изображений
    Добавление, редактирование и удаление меню
    Добавление и удаление Баннеров главной странице
    Добавление, редактирование и удаление каталога товаров
    3 варианта выбора шаблонов категории товаров
    Обычный шаблон товаров
    Шаблон список
    Колоночный шаблон товаров
    Добавление, редактирование и удаление Товаров
    Добавление, редактирование и удаление производителей
    Просмотр заказы товаров
    Добавление, редактирование и удаление страниц
    Добавление, редактирование и удаление статей
    Добавление, редактирование и удаление пользователей
    Список стран и регионов


А так же мой проект сайт онлайн фильмов сделана на kohana на моем движке NorCMS 

http://norfilms.ru , http://nornix.ru

движке NorCMS работает мой сайт http://nordev.ru


Последний раз редактировалось norayrx 11 окт 2013, 21:47, всего редактировалось 3 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 10 май 2013, 22:31 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
Спасибо за опыт, но сама cms не понравилась:
паттерн MVC не совсем верно местами организован
kohana используется местами коряво, а местами и не используется где нужно
стиль программирования хромает

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 11 май 2013, 02:39 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 июл 2012, 18:00
Сообщения: 701
Откуда: Murom, Russia
Столько грамматических ошибок в жизни не видел. Исправляйте быстро :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 12 май 2013, 19:01 
Не в сети
Новичок

Зарегистрирован: 06 мар 2013, 00:11
Сообщения: 29
а какие именно


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 12 май 2013, 19:04 
Не в сети
Новичок

Зарегистрирован: 06 мар 2013, 00:11
Сообщения: 29
kohana используется местами коряво, а местами и не используется где нужно
стиль программирования хромает

Спасибо за комментарии , может у вас есть предложения или что то подскажите что и где улучшить?
и где используется коряво и почему ? и где не используется где нужно


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 12 май 2013, 21:00 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
там много всего, я бы помог, но увяз в написании своей cms.
например:
application\classes\controller\admin\category.php и в других местах
Код:
public function before() {
        parent::before();
}

зачем?

Код:
$cat = Arr::extract($_POST, array('category_title', 'cat_id'));
if (isset($_POST['submit']))

нужно использовать $this->request->post() т.к. переменные полученные таким образом более защищены

application\classes\controller\admin\products.php
function action_add() - работа над данными должна выполняться в моделях,а не контроллерах.

application\classes\model\article.php и например payment.php, повторяется function uniq_alias($value, $field), можно было бы сделать модель родитель и наследовать свои классы от нее. и еще где-то подобное у вас видел

еще в orm моделях нужно явно описывать поля таблицы иначе возникают лишние запросы

присоединяйтесь, распределенная система администрирования вам не помешает.
http://forum.kohanaframework.org/discus ... ment_77973

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 12 май 2013, 23:13 
Не в сети
Новичок

Зарегистрирован: 06 мар 2013, 00:11
Сообщения: 29
А как посмотреть и проверить и узнать в этом случи есть личные запросы?

и как уверится что post() ; боле защищеная?

как это все проверить и увидеть самому?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 12 май 2013, 23:18 
Не в сети
Новичок

Зарегистрирован: 06 мар 2013, 00:11
Сообщения: 29
function action_add() - работа над данными должна выполняться в моделях,а не контроллерах.

а как сделать в моделях можете показать пример?

в случи ORM как же сделать в model ях?


public function action_add() {

//Получение категорий
$categories = ORM::factory('category');
$categories = $categories->fulltree()->as_array();

$manufactures = ORM::factory('manufactures')->find_all();

if (isset($_POST['submit']))
{
// Работа с товаром
$data = Arr::extract($_POST, array('cat_id', 'manufacture_id', 'title', 'code', 'description', 'price', 'images','meta_description', 'meta_keywords', 'status'));
$products = ORM::factory('product');
$products->values($data);


try {
$products->save();
$products->add('categories', $data['cat_id']);

// Работа с изображениями
if (!empty($_FILES['images']['name'][0]))
{

print_r($_FILES['images']['name'][0]);
foreach ($_FILES['images']['tmp_name'] as $image)
{

$filename = $this->_upload_img($image);

// Запись в БД
$im_db = ORM::factory('image');
$im_db->product_id = $products->pk();
$im_db->name = $filename;
$im_db->save();

$p_db = ORM::factory('product', $products->pk());
if ($p_db->image_id == 0){
$p_db->image_id = $im_db->pk();
$p_db->save();
}
}
}

$this->request->redirect('admin/products');
}
catch (ORM_Validation_Exception $e) {
$errors = $e->errors('validation');
}

}

$content = View::factory('admin/addproduct',array('manufactures'=>$manufactures))
->bind('errors', $errors)
->bind('cats', $categories)
->bind('data', $data);

// Вывод в шаблон
$this->template->page_title = 'Товары :: Добавить';
$this->template->block_center = $content;
}


Какой часть можно в моделях написать
а как сделать в моделях можете показать пример?

class Model_Product extends ORM {

protected $_table_name = 'products';
protected $_primary_key = 'id';
protected $_db_group = 'default';

protected $_has_many = array(
'images' => array(
'model' => 'image',
'foreign_key' => 'product_id',
),

'categories' => array(
'model' => 'category',
'foreign_key' => 'product_id',
'through' => 'products_categories',
'far_key' => 'category_id',
),

'orders' => array(
'model' => 'order',
'foreign_key' => 'product_id',
'through' => 'orders_products',
'far_key' => 'orders_id',
),
);

protected $_belongs_to = array(
'main_img' => array(
'model' => 'image',
'foreign_key' => 'image_id',
),

'manufactures' => array(
'model' => 'manufactures',
'foreign_key' => 'manufacture_id',
),
);


public function rules()
{
return array(
'title' => array(
array('not_empty'),
),
'description' => array(
array('not_empty'),
),
'price' => array(
// array('not_empty'),
array('numeric'),
),
);
}


public function labels()
{
return array(
'title' => 'Наименование',
'description' => 'Описание',
'price' => 'Цена',
);
}

public function filters()
{
return array(
TRUE => array(
array('trim'),
),
'title' => array(
array('strip_tags'),
),
'price' => array(
array('strip_tags'),
),
);
}

}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 12 май 2013, 23:45 
Не в сети
Бывалый
Аватара пользователя

Зарегистрирован: 02 апр 2013, 16:26
Сообщения: 474
Откуда: Сергиев Посад
добавить в модель методы соответствующие.
например в модель добавляем метод add($data) в котором содержится код добавления данных в модель, а в контроллере в action_add() вызываем данный метод Модель->add($data_from_post)

_________________
Майкл Джордан играет в баскетбол. Чарльз Мэнсон убивает людей. Я пишу код. У каждого свой талант.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Мой интернет магазин на Kohana 3.2
СообщениеДобавлено: 15 май 2013, 01:45 
Не в сети
Новичок

Зарегистрирован: 06 мар 2013, 00:11
Сообщения: 29
может покажете какой не буть пример пример к этому коду

Код:
   public function action_add(){
      if(isset($_POST['submit'])){
      
         if($this->user->username =='demo') {
         $this->request->redirect('admin/articles?act=demo');
         exit;
         }
         
         $data = Arr::extract($_POST, array('article_title', 'article_alias', 'article_text', 'article_description', 'article_keywords', 'article_status'));
         $article = ORM::factory('article');
         $article->values($data);

         try{
               $article->save();
               $this->request->redirect('/admin/articles');
         }
         catch(ORM_Validation_Exception $e){
               $errors = $e->errors('validation');
         }

      }

      $content = View::factory('/admin/articlesadd')
               ->bind('errors', $errors)
               ->bind('data',$data);

      $this->template->page_title = 'Добавить страницу';
      $this->template->block_center = $content;
   }



Код:
class Model_Article extends ORM {

    protected $_table_name = 'articles';
    protected $_primary_key = 'article_id';
   protected $_db_group = 'default';

   public function rules()
    {
        return array(
            'article_title' => array(
                array('not_empty'),
            ),
            'article_alias' => array(
                array('not_empty'),
                array('alpha_dash'),
                array(array($this, 'uniq_alias'), array(':value', ':field')),
            ),
            'article_text' => array(
                array('not_empty'),
            ),
        );


    }


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2, 3  След.

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group