Vladimir Babin
Vladimir Babin
Good question, but in current implementation you can't call one method and know that user has voted already. This lines respond to this functionality https://github.com/Chiliec/yii2-vote/blob/master/actions/VoteAction.php#L43-L47 and it can be moved...
Идея отличная, но оформленная в виде PR она была бы ещё лучше :)
Ну, как вариант. По идее, конечно, этот модуль должен предоставлять возможность подписаться на события модели проще.
Идея замечательная, но нужно всё хорошенько обдумать перед таким крутым изменением. Наверняка найдутся ещё какие-то подводные камни.
В принципе и от настройки `matchingModels` тогда можно отказаться, если создать ещё одну табличку с `PK` и `model_name` и связать её с `rating`. Тогда вообще всё магически будет происходить. Правда...
Правда, если убирать эту настройку, надо придумать как оставить возможность задавать собственные значения для разрешения голосовать гостям и менять свой голос. Или эта фича не нужна и глобальных значений достаточно?
Переделал `name => id` на `id => name` в конфиге, что, как мне кажется, более логично (индексы массива). Изменения в ветке [develop](https://github.com/Chiliec/yii2-vote/tree/develop), я поправил документацию, можете попробовать. Теперь можно предположить,...
Я вот всё думаю как бы поменьше действий делать для подключения. Подключение поведения уже [происходит динамически](https://github.com/Chiliec/yii2-vote/commit/fa245a093f35f1a5ed50583d3d53bbc184070b85), теперь хочется ещё вынести рейтинг во внешнюю таблицу. Хотелось бы формировать его на лету...
Возможность выборки с учетом рейтинга - обязательное условие, без которого и нет смысла выносить рейтинг во внешнюю таблицу. Главное теперь понять как это сделать :neckbeard: Естественно можно подключать и по-старинке...
> Примерно, как тут > https://github.com/trntv/yii2-starter-kit/blob/master/common/behaviors/CacheInvalidateBehavior.php Ну тогда мне кажется можно добавить вот это: ``` php $modelName = static::getModelNameById($modelId); $model = $modelName::findOne($targetId); $model->trigger($modelName::EVENT_AFTER_UPDATE); ``` после этой строчки https://github.com/Chiliec/yii2-vote/blob/develop/models/Rating.php#L189 Ну или...