[recovery mode] Пример использования standalone actions в Yii2
2014-01-11 23:33:08
При разработке сайта неотъемлемую часть занимает получение коллекций данных. Выборка по ...
+ развернуть текст сохранённая копия
При разработке сайта неотъемлемую часть занимает получение коллекций данных. Выборка по определённым условиям, пагинация. Каждый раз писать реализацию в контроллерах весьма занудно. Когда как можно один раз сделать расширяемую реализацию часто используемого функционала.
В данной статье будет приведен пример как при использовании функционала Standalone actions фреймворка Yii2 красиво организовать единообразную архитектуру, которую можно использовать во всех частях приложения.
Читать дальше →
Тэги:
actions,
php,
standalone,
topic,
yii,
yii2,
блог,
компании
Как я заставил работать API в Yiinitializr Advanced
2014-01-09 00:01:30
+ развернуть текст сохранённая копия
В продолжение моего предыдущего поста о таком интересном инструменте как Yiinitializr, я решил ответить на вопрос о возможностях работы API, предоставляемых шаблоном Advanced. В рамках комментария или дополнительного пункта к прошлой статье материал уместить не удалось, поэтому всех, кого интересует данная тема, приглашаю под кат. В ней мы не будем касаться принципов проектирования правильной архитектуры API, а разберёмся как воспользоваться трудами ребят из
2amigos, которые дали нам возможность быстро
(после прочтения статьи — точно быстро) развернуть API для наших проектов на Yii.
Способ реализации работы с API в Yiinitializr
API — программный интерфейс приложения, служащий для использования во внешних программных продуктах. Если мы хотим, чтобы возможностями нашего приложения могли воспользоваться другие разработчики в своих проектах, то без хорошо спроектированного API нам не обойтись. К сожалению, Yii первой версии не сможет помочь в этом деле. Вероятно, вам подойдет Yiinitializr, который решит часть вопросов, но, как мы знаем, отсутствие документации является серьезным препятствием.
Представим, что работа над нашим замечательным приложением закончена, работа API налажена, и уже появился первый разработчик, желающий воспользоваться возможностями нашей системы. По какому принципу будет строиться её использование?
Читать дальше →
Тэги:
api,
php,
yii,
yiinitializr
Автоматическое тегирование кеша в Yii
2014-01-08 14:24:48
Кеширование с тегами — инструмент, позволяющий точечно обновлять кеш при изменении тех или иных ...
+ развернуть текст сохранённая копия
Кеширование с тегами — инструмент, позволяющий точечно обновлять кеш при изменении тех или иных зависимостей.
К сожалению, разработчики Yii не сочли нужным внедрить этот инструмент в ActiveRecord, а стоило бы. Тем не менее, они дали нам возможность сделать это самим.
Реализация привязки тегов к моделям на основе зависимостей уже обсуждалась на хабре habrahabr.ru/post/159079/. Автору отдельная благодарность. Я буду использовать ее как основу, и дополню функциями для автоматической генерации тегов.
Читать дальше →
Тэги:
cache,
php,
tagging,
yii,
программирование
Почему мы предпочли Symfony 2 вместо Yii
2014-01-08 01:08:36
Перевод статьи Why We Prefer Symfony 2 Over Yii Framework. В этой статье я собираюсь рассказать вам ...
+ развернуть текст сохранённая копия
Перевод статьи Why We Prefer Symfony 2 Over Yii Framework. В этой статье я собираюсь рассказать вам историю, которая объясняет — почему наша команда предпочитает Symfony 2 вместо Yii, который мы использовали продолжительное время и делали на нём наши лучшие приложения. Как это случилось и по каким причинам мы приняли наше решение о смене фреймворка. ...read more
Тэги:
php,
symfony,
yii,
переводы
[Из песочницы] Создаем поведение (behavior) для Yii2
2014-01-07 15:33:32
Часто, а на самом деле практически всегда, при создании сайта необходимо, чтобы страницы сайта ...
+ развернуть текст сохранённая копия
Часто, а на самом деле практически всегда, при создании сайта необходимо, чтобы страницы сайта открывались не по id сущности в базе, а по текстовому идентификатору, назовем его slug.
post/view/1 => post/view/testovaya-novost
(из url'а стоило бы убрать и view, но урок не о том)
Самым примитивным путем можно создать в таблице post поле slug, в модели Post соответственно появляется новый атрибут, в представление (view) добавляем новый input, в который ручками вбиваем slug.
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
/**
* @var yii\web\View $this
* @var common\models\Post $model
* @var yii\widgets\ActiveForm $form
*/
?>
<div class="post-form">
<?php $form = ActiveForm::begin(); ?>
<?= $form->field( $model, 'name' )->textInput( [ 'maxlength' => 255 ] ) ?>
<?= $form->field( $model, 'slug' )->textInput( [ 'maxlength' => 255 ] ) ?>
<?= $form->field( $model, 'content' )->textarea( [ 'rows' => 6 ] ) ?>
<div class="form-group">
<?= Html::submitButton( $model->isNewRecord ? Yii::t( 'app', 'Create' ) : Yii::t( 'app', 'Update' ), [ 'class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary' ] ) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
Читать дальше →
Тэги:
behavior,
php,
yii,
yii2