CostaRico / yii2-images

Yii2-images - behavior-based module for resizing, storing, caching and attaching images.
160 stars 97 forks source link

sql error on placeholder use #22

Open dub34 opened 9 years ago

dub34 commented 9 years ago

Hi. When i try to use placeholder, i get an sql error binding ItemId empty string to int field in method getImage();

maybe it work on mysql, but not on Postgres. Please fix it.

if fix it with

if (empty($itemId)) { $itemId = null; }

CostaRico commented 9 years ago

Hi, could you make request?

dub34 commented 9 years ago

Я нашел в твоем коде русские комменты, я думаю ты понимаешь по русски?

CostaRico commented 9 years ago

Привет, да, можно на русском.

dub34 commented 9 years ago

Я честно сказать не знаю как сделать pull-request. там я тебе скинул свой фикс. С ним заработало. и еще я кое-что добавил в модуль, чтоб можно было работать с моделями-наследниками. Типа ModelSearch -> Model. Была проблема, если я пытался вывести привязанную к модели картинку в гриде, а для dataprovider я использовал модель-наследницу. Естественно в callback функцию контента столбца передавалась не та модель, а модуль искал по ее имени картинку и не находил. Пришлось добавить еще 1 свойство имяМодели и назначать его при подключении поведения.

CostaRico commented 9 years ago

Предлагаю тебе пока форк сделать, я смогу пересмотреть код и проверить все после праздников только, и тогда внесу твои изменения. Спасибо!

dub34 commented 9 years ago

Ну собственно так и сделал. Если что, пиши, я тебе свой код кину

CostaRico commented 9 years ago

Да, хорошо!

Progmer commented 8 years ago

Привет. Не хотел создавать топик yii2-images/Module.php - строка 82 $modelDir = \yii\helpers\Inflector::pluralize($modelName).'/'. $modelName . $model->id;

если я использую название поля в своей модели не 'id' в качестве primaryKey, а например 'blogId', хотелось бы использовать определенное мной название поля для идентификации Или может подскажешь другой вариант?

CostaRico commented 8 years ago

Привет, вообще, это странно не иметь поля id в таблице, почему ты используешь blockId?

Progmer commented 8 years ago

Ничего странного. Ну это уже другой вопрос. Но вообще, например, удобно при JOIN'ах таблиц с использованием USING. Ну а если смотреть дальше, то например при выборке 2 и более таблиц у меня не объединятся primaryKey колонки всех моих объединенных таблиц в одну SELECT * FROM blogs INNER JOIN posts USING (blogId) WHERE ... В итоге в выборке будут и blogId и postId

В файле vendor/costa-rico/yii2-images/Module.php в строке 82 я себе закостылил пока так $model->tableSchema->primaryKey

CostaRico commented 8 years ago

Может быть и не странно, но меня всегда смущали вещи типа $blog->blogId, тавтология.

Сейчас на php не программирую практически, поэтому модулем не занимаюсь, но пул реквесты всегда приветствуются.