
Максим
11.04.2018
14:21:57
а зачем путс и тд
просо category.tags.include?(tag)
вернёт либо тру либо фолс
а

Google

Максим
11.04.2018
14:22:13
стоп
тебе в итоег то что надо

Alex
11.04.2018
14:22:20
Ну это образец, разумеется там будет по другому

Максим
11.04.2018
14:22:21
чтоб на экроан вывело
или чего
а
ну хорошо

Alex
11.04.2018
14:22:29
мне надо было, чтобы N+1 не было )

Максим
11.04.2018
14:22:50
я просто сижу смотрю на это category.tags и думаю чем не устраивает то

Alex
11.04.2018
14:23:06
Конец дня, торможу )

Максим
11.04.2018
14:23:13
да я тоже

Vasiliy
11.04.2018
14:34:54
ребят а кто с постгресом в ладах, у меня после миграции в db/structure.sql ко всем таблицам public дописывается в начале, как можно убрать такое поведение?

ojab
11.04.2018
14:37:01
никак, это схема, в которой таблицы находятся.

Google

Vasiliy
11.04.2018
14:37:37
а почему тогда у другого разраба генерится без этой схемы?

ojab
11.04.2018
14:38:03
hmm..
версии постгреса разные?
а точнее у тебя уже десяточка

Vasiliy
11.04.2018
14:40:53
у меня 9.6, до этого была проблема что стояла 9.5 у меня, сейчас обновил кластер до 9.6
причем не первый раз такое что после миграции в файл этот добавляется у меня паблик, хотя у других без этого таблицы, проблемы то особо нет, но файл после любой миграции в диффе в гите

ojab
11.04.2018
14:46:03
https://wiki.postgresql.org/wiki/A_Guide_to_CVE-2018-1058:_Protect_Your_Search_Path
фикс для вот этого стал выводить схему, в общем.
так что после обновления оно у всех будет
afair

Vasiliy
11.04.2018
14:50:19
так там в structure.sql в принципе такое есть SET search_path TO "$user", public;

ojab
11.04.2018
14:51:07
ага, https://github.com/postgres/postgres/commit/815172ba8068dbca9b585ed4aa975db00bef01d8

Vasiliy
11.04.2018
14:51:28
и при том у другого вероятнее версия БД старше, т.к. у меня на 9.5 падало именно из за опции которую добавили в 9.6
при чем комменты норм формируются у другого разраба
— Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: -
я думаю может где в дефолтах прописано это

ojab
11.04.2018
15:06:50
не, см. хотя бы тесты в коммите выше.

Александр
11.04.2018
15:39:06
Вопрос: Нужно переопределить метод в классе, при этом сохранить прошлый вариант метода. Это возможно?

ojab
11.04.2018
15:39:59
сделать alias_method перед переопределением и юзать новое имя метода

Александр
11.04.2018
15:40:46
Спасибо!

Google

ojab
11.04.2018
16:20:50
пример?

Александр
11.04.2018
16:23:38
class User < ActiveRecord::Base
has_one :contact, dependent: :destroy
у класса User, не будет метода contact, но у его инстанса будет.

Sergii
11.04.2018
16:24:46
class << self
alias :generate :new
не?

Александр
11.04.2018
16:25:14
а как это работает?

Sergii
11.04.2018
16:25:35
ну в секции для методов класс добавляешь свой алиас
*сса
в 1.9 тут пишут можно так, singleton_class.send(:alias_method, :generate, :new)

Александр
11.04.2018
16:26:30
Окей, щас попробую

ojab
11.04.2018
16:27:05

Александр
11.04.2018
16:37:47
Сработало, спасибо = )

Denis
11.04.2018
18:28:38
Ребят может глупо ну все же можно как-то занесни значение в константу и потом запретить ее перезапись?

Dmitry
11.04.2018
18:30:12
.freeze ?

rekero
11.04.2018
18:34:08
ну напрямую freeze не запретит перезапись, он модифицировать запретит
можно константу в модуль вынести и модуль заморозить

Denis
11.04.2018
18:55:36
@rekero можешь примерр показать?

rekero
11.04.2018
18:59:30
module Test
LETTER = 'A'
end
Test.freeze
Test::LETTER = 'B'
>can't modify frozen Module

Denis
11.04.2018
19:00:33
То что выбило ошибку не прирвет ли выполнения кода? Или это лишьпредупреждение?

rekero
11.04.2018
19:04:46
прервет

Denis
11.04.2018
19:05:08
значит не подходит

Google

rekero
11.04.2018
19:05:37
ну можешь rescue добавить
но у тебя проблемы с архитектурой

Aleksey
11.04.2018
19:10:27
Как правило подобные вылюбасы от незнания / не замечания настоящих проблем

Denis
11.04.2018
19:17:10
@nattf0dd есть таск который будет выполняться четыре раза в день. У пользователей хранится время. И если системное время равняется тому что у некоторых пользователей. То должен выполнится код для этих пользователей. И я думаю что делать если таск будет выполняться дольше одной минуты то часть пользовательй пройдет мимо. Поэтому и хотл как-то записать один раз время и заморозить

Aleksey
11.04.2018
19:21:59
Уже немного понятнее, но все равно мало контекста. Таск запускается чем? По крону, или просто бесконечный цикл молотит 24/7 и смотрит не пришло ли время для каких-то юзеров?

Denis
11.04.2018
19:23:34
По крону

Aleksey
11.04.2018
19:23:43
Если второе, решается выносом тасков по конкретным юзерам в activejob/sidekiq/etc, наступил час Х - создали фоновую джобу, в параметры передали юзеров, джоба может хоть через час в фоне выполнится, на других это никак не повлияет

Denis
11.04.2018
19:23:45
Да и смотрит не пришло ли время

Ēľ Ċāƥīāŋ Ƭīʋȷɍēś
11.04.2018
19:24:20
значит не подходит
но тогда ведь просто константа? ее менять можно и будет уведлмление, но без остановки
я недавно начал изучение языка, но это было в основах

Aleksey
11.04.2018
19:25:55
Опять же , если в таблице юзеров указано время, когда им этот таск выполнять, любой процессор фоновых джоб умеет запускать джобу в указанное время
В конце выполнения джобы просто создаём ещё одну на следующее время и все

Vasiliy
12.04.2018
07:04:35
версии постгреса разные?
вообще как раз версии постгре были разные, в 10ке в pg_dump название public схемы не указывается

ojab
12.04.2018
07:09:45
указывается после фикса CVE-2018-1058

Lavrushchik
12.04.2018
07:12:43
у кого-нибудь был опыт работы с созданием админки на ангуляре в проекте, в котором только методы для API?

Vasiliy
12.04.2018
07:58:54

Karina
12.04.2018
08:00:41
ребят, что делать если в модели есть атрибут method, но руби вызывает не у модели, а у Kernel?

Антон
12.04.2018
08:03:50

Karina
12.04.2018
08:04:24
у меня не ar

Google

Karina
12.04.2018
08:05:16
как-то через binding можно, наверно

ojab
12.04.2018
08:07:17
и pg_dump оттуда же?

Dmitry
12.04.2018
08:09:08
вопрос у меня bundle install выдает There was an error while trying to write to /home/redmine/redmine/vendor/bundle/ruby/2.4.0`. It is likely that you
need to grant write permissions for that path.
где он берет этот путь?

Vasiliy
12.04.2018
08:10:52
как-то так, но пакеты все оттуда
pgdg-keyring 2017.3
postgresql 10+189.pgdg17.04+1
postgresql-10 10.1-1.pgdg17.04+1
postgresql-client-10 10.1-1.pgdg17.04+1
postgresql-client-common 189.pgdg17.04+1
postgresql-common 189.pgdg17.04+1
postgresql-contrib 10+189.pgdg17.04+1

Dmitry
12.04.2018
08:11:05
Bundler 1.16.1
Platforms ruby, x86_64-linux
Ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
Full Path /home/difry/.rvm/rubies/ruby-2.4.1/bin/ruby
Config Dir /home/difry/.rvm/rubies/ruby-2.4.1/etc
RubyGems 2.6.14
Gem Home /home/difry/.rvm/gems/ruby-2.4.1
Gem Path /home/difry/.rvm/gems/ruby-2.4.1:/home/difry/.rvm/gems/ruby-2.4.1@global
User Path /home/difry/.gem/ruby/2.4.0
Bin Dir /home/difry/.rvm/gems/ruby-2.4.1/bin

ojab
12.04.2018
08:12:07

Vasiliy
12.04.2018
08:12:36
так а 10.3 только из исходников компилять?

ojab
12.04.2018
08:12:41
если это через capistrano

Dmitry
12.04.2018
08:14:20
не капистрано нема в проекте

ojab
12.04.2018
08:15:49
значит просто BUNDLE_PATH прописан или где-то в envvars, или в конфиге бандлера
см. bundle env ниже, там где ## Bundler settings

Dmitry
12.04.2018
08:18:56
ага ты прав, это просто в .bundle/config поправить?