
Максим
27.09.2017
08:25:44
`last_block = nil
blocks.each do |id|
block = Block.find(id)
last_block = block
options = params[:params]
block.update_in_time(options[:value].to_i, options[:unit])
вот код без байбага
last_block = nil
blocks.each do |id|
byebug
block = Block.find(id)
last_block = block
options = params[:params]
block.update_in_time(options[:value].to_i, options[:unit])
вот с ним

Google

Максим
27.09.2017
08:26:00
я же всё правильно использую?

Alexey
27.09.2017
08:26:23
Может blocks пустой?

Nikolay
27.09.2017
08:26:27
puts “IA TUT BYL”

Zamira
27.09.2017
08:26:28
может просто исполнение не заходит до блока?

Максим
27.09.2017
08:26:48
сама ошибка да

Vasiliy
27.09.2017
08:26:52
да да, в блок скорее всего не входит

Максим
27.09.2017
08:26:55
NoMethodError - undefined method `[]' for nil:NilClass:

Vasiliy
27.09.2017
08:26:57
ебани перед блоком

Максим
27.09.2017
08:27:07
но я посмотрел опять же в логах какие запросы он в бд стучит
и вполне возвращает нужный объект
ща попробую перед блоком

Vasiliy
27.09.2017
08:27:41

Максим
27.09.2017
08:28:09
ща сек я тесты запустил логи переписывает

Google

Максим
27.09.2017
08:28:46
не, перед блоком поставил тоже похуй не остановил

Vasiliy
27.09.2017
08:29:06
а ты как тесты пускаешь?

Максим
27.09.2017
08:29:25
bundle exec rspec features

Nikolay
27.09.2017
08:29:37

Максим
27.09.2017
08:29:50
на локально запущеном сервере в тестовом енвайрменте
last_block = nil
p "v metode"
blocks.each do |id|
block = Block.find(id)
last_block = block
p "v each bloke"
p "options[:value] = " + options[:value].to_s + " options[:unit] = " + options[:unit].to_s
options = params[:params]
block.update_in_time(options[:value].to_i, options[:unit])

Alexey
27.09.2017
08:32:36
Кинь логи в гист

Максим
27.09.2017
08:33:40
в консоль не написалио ни строки
ну из тех что я в код добавил

Vasiliy
27.09.2017
08:35:15
кинь полный код теста

Максим
27.09.2017
08:35:51
https://gist.github.com/Qew7/aee9d2f19dcd698b5fd96d2f6ff939ea
ща тест
https://gist.github.com/Qew7/71e173b0944fb5d3373863a882343bfc
падает первый "it"

Alex
27.09.2017
08:36:39
NoMethodError - undefined method `[]' for nil:NilClass:
В КОНТРОЛЛЕРЕ

Alexey
27.09.2017
08:36:46
update_info_in_time
Алекс уже написал

Максим
27.09.2017
08:37:04
собсно на 102 строке тест падает

Alexey
27.09.2017
08:37:14
Не

Google

No
27.09.2017
08:37:19

Alexey
27.09.2017
08:37:19
Твой тест падает в контроллере

Alex
27.09.2017
08:37:21
пишут контроллеры без тестов, потом удивляются чо все падает.

Максим
27.09.2017
08:37:32
я ток 3 день тут

Alex
27.09.2017
08:38:03
юнит тестировать его по возможности.

Anton
27.09.2017
08:38:18

Максим
27.09.2017
08:38:20

No
27.09.2017
08:38:31

Alex
27.09.2017
08:38:32

Alex
27.09.2017
08:38:34
непонятно, лол

Максим
27.09.2017
08:38:35

Anton
27.09.2017
08:38:39

Максим
27.09.2017
08:38:42

Alex
27.09.2017
08:38:49

Anton
27.09.2017
08:38:52

Alex
27.09.2017
08:38:58

Google

Alex
27.09.2017
08:39:17
она воще не для руби

Максим
27.09.2017
08:39:37
ну что он должен сделать? я им не пользовался
по идее должен выбросить в консоль и дать по листингу пробежатсья посмотреть чё там в переменных, так ведь?
ну он просто идёт как ни в чём не бывало
типа я и не писал там нигде byebug
гем стоит

Alex
27.09.2017
08:40:19
ну блжать поставь в самом начале экшена byebug

Vasiliy
27.09.2017
08:40:32
ало, ты ставил в тест, а ошибка у тебя в контроллере

Максим
27.09.2017
08:40:36
ща

Vasiliy
27.09.2017
08:40:38
ставь в контроллер)

Alex
27.09.2017
08:40:40
если даже он не ловится то одно из двух - ты уже в byebug / в контроллерее before_action/middleware не доходят до экшена

Максим
27.09.2017
08:40:44

Admin
ERROR: S client not available

Vasiliy
27.09.2017
08:40:48
а

Alex
27.09.2017
08:40:54
в начало экшена поставь

Vasiliy
27.09.2017
08:40:56
значит мб в before_action

Alex
27.09.2017
08:40:59
если даже он не ловится то одно из двух - ты уже в byebug / в контроллерее before_action/middleware не доходят до экшена

Максим
27.09.2017
08:41:07

Alex
27.09.2017
08:41:29
ща
такое ощущение что ты не оч понимаешь как рельсы работают. Дебаггер гарантировано вызывается
если не вызывается то код его не вызвали, либо ты уже в нем.
а еще советую pry-rails и ставить binding.pry. Там подсветочка все дела, удобненько.

Максим
27.09.2017
08:42:12
ну вот опять

Google

Максим
27.09.2017
08:42:19
поставил в самое начало экшна
def update_info_in_time
byebug
if params[:block].kind_of?(Array)

Alex
27.09.2017
08:42:35
Это экшена название??

Максим
27.09.2017
08:42:36

Alex
27.09.2017
08:42:41
это название экшена?

Максим
27.09.2017
08:42:44
ну, метода

Alex
27.09.2017
08:42:49
ЭКШЕНАААА
АААААА
экшен и метод это разные весчи

Максим
27.09.2017
08:43:03
спокойно

Alexey
27.09.2017
08:43:07
Started GET "/api/blocks/data/update_info_in_time?block=3"

Alex
27.09.2017
08:43:15
а, ну значит экшон

Anton
27.09.2017
08:43:23

Alex
27.09.2017
08:43:28
поставь там 5.times { puts "YA TUT ZAPUSTILSYA }

Максим
27.09.2017
08:43:42
там уже стоит
def update_info_in_time
byebug
if params[:block].kind_of?(Array)
blocks = params[:block]
else
blocks = [params[:block]]
end
building_id = Block.find(blocks[0]).building.id
blocks_ser = []
events = []
last_block = nil
p "v metode"
ща в начало поставлю

Alex
27.09.2017
08:43:52

Vlad
27.09.2017
08:44:26
Попридумывали тут своих названий

Alex
27.09.2017
08:44:26
в общем добейся ситуации где текст выводится, а дебаггер не вызывается. Когда добьешься - плачь, потому что это неведомая странная хрень.

Максим
27.09.2017
08:45:01
нет, текст опять не написался
что то я явно делаю не так
мб сервер перезапустить

Alex
27.09.2017
08:47:53