@proRuby

Страница 1004 из 1594
Максим
10.01.2018
14:05:19
получается он делает такой вот иннер джоин

и потом удаляет оттуда эти сагесшн

но я не могу понять то ли так и должно быть

то ли делит как то в новой версии по другмоу себя ведёт

Google
Максим
10.01.2018
14:05:52
в ноутсах я ничего не нашёл

в бд старой приложухи на рельсах 4 вижу что он не удаляет из таблички сагесшн

а у меня удаляет

хотя должен удалять только из таблички селектед сагесшн и прочих _сагесшн

бля я тупо описываю

но надеюсь хотяб процентов на 10% ясно

Vasiliy
10.01.2018
14:10:57
какой-то пиздец лол)

Максим
10.01.2018
14:21:02
ну короче

нашёл я

там ест ьметод которые проверяет саггесшнс на наличие клонов себя

так вот он находит себя считает себя клоном и удаляет

def destroy_md5_clones Suggestion.find_by(md5_hash: self.md5_hash, order_id: self.order_id).each {|sugg| sugg.destroy unless self.id == sugg.id } end

норм переписал?

Google
ojab
10.01.2018
14:24:47
а если два клона?

Максим
10.01.2018
14:24:55
ну он же по всем проходится

или файнд бай ток 1 результат вернёт?

ojab
10.01.2018
14:25:07
а, .find_by.each

да

Vlad
10.01.2018
14:25:09
1

ojab
10.01.2018
14:25:19
и у него не будет .each

Максим
10.01.2018
14:25:21
where Тогда, да?

Vlad
10.01.2018
14:25:29
+

Максим
10.01.2018
14:25:34
сяп

ojab
10.01.2018
14:25:50
self`ы можно убрать + в пятых рельсах есть .where.not`

Suggestion.where(md5_has: md5_hash, order_id: order_id).where.not(id: id).destroy_all

Максим
10.01.2018
14:27:05
бля

охуенно

обожаю руби и рельсы

спасибо

ojab
10.01.2018
14:27:35
ну и Suggestion не очень хорошо юзать, ибо нам пофиг как он называется, так что лучше юзать self.class.where

Максим
10.01.2018
14:27:53
а почему не оч хорошо?

разве не более читабельно?

ojab
10.01.2018
14:29:23
хз, но в (невероятном) случае переименования Suggestion и/или копипаста — Suggestion поломается, а self.class не поломается.

Google
ojab
10.01.2018
14:29:28
ну да это вкусовщина

Максим
10.01.2018
14:30:46
хм

реал

но

поменять в файле контрл эфом имя класса легко

Nikita
10.01.2018
14:31:15
это лишние действия

Максим
10.01.2018
14:31:16
пробелма всё равно останется когда будешь исктаь по другим файлам

Nikita
10.01.2018
14:31:34
если ты пишешь метод в той же модели, то тебе достаточно писать просто where(...)

ojab
10.01.2018
14:31:41
это инстанс

Максим
10.01.2018
14:31:42
опа

Максим
10.01.2018
14:32:04
был другой

просто находил по мд5 хешу и ордер айди

и удалял

Egor
10.01.2018
14:32:21
Ну, т.е это не ActiveRecord делает

Максим
10.01.2018
14:32:22
если есть

да

Egor
10.01.2018
14:32:31
это в проекте на колбек повесили

Максим
10.01.2018
14:32:38
да

Google
Egor
10.01.2018
14:32:39
обожаю AR колбеки

Максим
10.01.2018
14:32:40
бефо сейв

Egor
10.01.2018
14:32:44
шутка

Максим
10.01.2018
14:32:58
я часто слышу что люди не любят ар колбеки

но не могу понять почему

из-за таких вот моментво как раз?

Nikita
10.01.2018
14:33:07
потом поймешь)

Egor
10.01.2018
14:33:27
хотябы из-за таких

Максим
10.01.2018
14:35:23
метод то в колбеке

видимо зовётся на экземпляр класса

а ну да

он же не self метод

Egor
10.01.2018
14:36:23
смотря что в self)

Максим
10.01.2018
14:42:17
метод описан в модели, метод не начинается с self. , а значит это метод экземпляра класса а не класса

кстати не задумывался а в руби так же или ток в рельсах

так же да?

по моему так же

Egor
10.01.2018
14:43:12
ты ж на руби пишешь

Nikita
10.01.2018
14:43:47
смотря где ты используешь self.

Google
Nikita
10.01.2018
14:43:52
в методе класса или инстанса

Максим
10.01.2018
14:44:09
ты ж на руби пишешь
да я после праздников ещё с мыслями не собрался

смотря где ты используешь self.
ну вот это был метод инстанса

поэтому просто where не сработало

был бы метод класса сработало бы

правильно понял?

Nikita
10.01.2018
14:45:05
правильно)

но тебе ничего не мешает использовть self.class.where(...)

Максим
10.01.2018
14:45:36
клёвое всё таки у руби коммьюнити

но тебе ничего не мешает использовть self.class.where(...)
я думаю тех диру не понравится, сильно таки бьёт по читабельности мне кажется

Nikita
10.01.2018
14:46:25
это ведь можно обосновать

как выше сказал ojab, при изменении названия класса (в твоем случае модели) - не придется геморроится

и не исключен вариант, что допустим в будущем модель переименуется, а название твоей текущей модели - это будет совсем другая модель)

но это уже предирство

Vasiliy
10.01.2018
15:00:33
а ты кстати за праздники собирался с нуля проект переписать, получилось?

Максим
10.01.2018
15:01:58
ай бля

тусовки унесли меня

от пк

Roman
10.01.2018
15:13:12
никто и не сомневался ? ну хоть тусовки уберегли тебя от этого

Страница 1004 из 1594