@rubylang

Страница 950 из 1684
Ivan
23.03.2017
10:37:48
Ребят, подскажите кто в курсах, сколько в epam'e в Минске средняя зп у сеньёров?

Антон
23.03.2017
11:16:14
сегодня собеседуешь человека, а завтра он собеседует тебя
Вот я какраз Евгения Бурмакина собеседовал недавно комьюнити маленькое

Eugene
23.03.2017
11:16:32
О, привет :)

И правда)

Google
Антон
23.03.2017
11:16:51
но я не HR поэтому я плохо собеседовал :)

Eugene
23.03.2017
11:20:27
Да нормально получилось)

Разработчика-то нашли кстати?

Anon
23.03.2017
11:22:23
Рельсы, раутер, есть раут с вайлдкардом вида get '*path/foo', to: 'what#ever' но он всегда будет раутить к экшону WhatController#ever. Когда мне обычно нужно как-то динамически высчитать, куда его направить, используется to: redirect { }.

Но если мне не нужен редирект, но нужно автоматически высчитать, в какой экшон какого контроллера его направить?

Антон
23.03.2017
11:23:05
ojab
23.03.2017
11:29:19
ну или при старте создать нужные роуты с нужными constrain'ами и т. п., если они в рантайме не будут изменяться

(i. e. constraints.each { |c| get '*path/foo', to: 'whatever#index', constraint: c })

Anon
23.03.2017
11:46:56
Лямбду to: не кушает

а стоп

кушает

спасибо

Google
Антон
23.03.2017
11:50:37
это просто аргумент

Vasiliy
23.03.2017
12:16:37
Ольга а правда в кроссовер раз в сколько-то минут делает снимок камерой ноутбука?

Sergey
23.03.2017
12:17:20
Говорят что да

http://xpinjection.com/articles/crossover-discussions/

Антон
23.03.2017
12:28:59
если ты сеньер то фотки экрана делать не имеет смысла

ПМ может как включить фотки в тех процесс так и не включать

с сеньера спрашивают результаты

а не сиськи и котиков которые он рассматривает чтобы подстегнуть нервную систему и выработку дофамина ?

I
23.03.2017
12:31:11
чтобы не спиться от прекрасного проекта

Vasiliy
23.03.2017
12:35:45
чуваки, я опять с тестами, у меня есть сервис который в себе отправляет смс, как бы мне до него добраться и застабить генерацию кода? ConfirmationService.new(user).send_confirmation_token внутри метода send_confirmation_token как раз вызывается приватный generate_token который как раз генерит шифрованный токен и оригинальный

Sergey
23.03.2017
12:41:48
allow_any_instance_of(ConfirmationService).to receive(:send_confirmation_token).and_return(:something)

Vasiliy
23.03.2017
12:46:02
cпасибо

Eugene
23.03.2017
12:57:17
Антон
23.03.2017
12:57:40
Не тех собес?
тех просто нужна структура ведения данных собеседуемых

Бурмакина я не помню о чем собеседовал и чем кончилось

ojab
23.03.2017
12:58:36
cпасибо
использовать any_instance_of — плохая практика, лучше сделать allow(ConfirmationService).to receive(:new).and_return(confirmation_service) и делать что угодно с этим самым confirmation_service

Vasiliy
23.03.2017
12:59:36
у меня это в юзере вызывается

delegate :send_confirmation_token, to: :confirmation_service delegate :confirm_by_token, to: :confirmation_service private def confirmation_service ConfirmationService.new(self) end

ojab
23.03.2017
13:01:04
делегировать в приватные методы — плохая практика

https://bugs.ruby-lang.org/issues/12782

Google
Vasiliy
23.03.2017
13:02:56
Статус: Closed

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

Vasiliy
23.03.2017
13:05:34
мне б по сути где-нить обернуть этот generate_token так чтобы вызывался оригинальный, но с моими параметрами

а оригинальный такой def generate_token loop do original_token = yield digested_token = Devise::Encryptor.digest(User, original_token) break [original_token, digested_token] unless User.exists?(confirmation_token: digested_token) end end

Anon
23.03.2017
13:43:23
get '*path/foo', to: -> (req) { original_path = req['ORIGINAL_FULLPATH'].sub(/\/foo\z/, '') path = Rails.application.routes.recognize_path(original_path) "#{path[:controller]}##{path[:action]}" }, as: :foo

ломается где-то в раутере

я так понимаю от меня требуется в лямбде вернуть не строку а что-то другое

гугл не помогает

Антон
23.03.2017
13:46:08
что ломается, что ожидается?

Anon
23.03.2017
13:47:13
ожидается: раут вида что/угодно/foo, который на деле будет рендерить это самое что/угодно

Антон
23.03.2017
13:47:51
спек на роуты написал?

Anon
23.03.2017
13:48:03
т.е. кривым псевдокодом: get '*path/foo', to: '*path'

Антон
23.03.2017
13:48:14
нене, спек напиши

будь мужыком!

Anon
23.03.2017
13:48:47
что, простите?

Антон
23.03.2017
13:49:12
https://relishapp.com/rspec/rspec-rails/docs/routing-specs

Vasiliy
23.03.2017
13:52:46
спеки на роуты, фи

Anon
23.03.2017
13:53:13
expect(get: "/users/vasja/foo").to route_to( controller: "users", nick: "vasja" ) expect(get: "/events/sports/volleyball/11-20-17/foo").to route_to( controller: "sports", type: "volleyball", date: "11-20-17" )

Google
Anon
23.03.2017
13:53:18
допустим

Я спеки не пишу, не бейте ток

Eugene
23.03.2017
13:53:40
??

Alexander
23.03.2017
13:54:02
Кто-нибудь использовал "ORDER BY <something> NULLS FIRST с postgresql? У меня когда выборка так отсоритровна, и я делаю offset c limit часть записей выводится по два раза (на 1 и 3 выборке), а часть вообще не выводится.

Alexander
23.03.2017
13:57:30
https://gist.github.com/kunashir/36b7c0aedf0c8defe79ede700bdbad4b

Антон
23.03.2017
13:58:51
https://gist.github.com/kunashir/36b7c0aedf0c8defe79ede700bdbad4b
так в посгресе проблема или в рельсе? если в посгресе то чатик не тот

Admin
ERROR: S client not available

Anon
23.03.2017
13:58:54
Опишу проблему немного иначе. get '*path/foo', to: 'landing#index' # => работает get '*path/foo', to: redirect { 'landing#index' } # => работает get '*path/foo', to: -> (req) { 'landing#index' } # => actionpack (5.0.0.1) lib/action_dispatch/journey/router.rb, line 41, undefined method `[]' for nil:NilClass

Alexander
23.03.2017
13:59:29
Пока вот не пойму

Anon
23.03.2017
13:59:43
а не сорьте, редирект пишется чуть иначе

не 'landing#index'

Anon
23.03.2017
14:01:05
суть в том, что что-то ожидается от лямбды, но не строка. Может я должен что-то добавить/изменить в передаваемый req и его вернуть, но я не могу нагуглить что

Anon
23.03.2017
14:01:43
что

Антон
23.03.2017
14:02:00
у тебя landing/index в роутах а в спеках sports users

Anon
23.03.2017
14:02:07
landing#index я для примера дал, кам он

упрощение тип

Google
Антон
23.03.2017
14:02:25
я не понимаю что ты хочешь сказать этим примером

Anon
23.03.2017
14:02:32
fff

Антон
23.03.2017
14:02:52
зачем тебе там лямбда мне не понятно

и почему там лямбда мне тоже не понятно

что ты хочешь не понятно

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

почему лямбда после :to где ты видел такую конструкцию в документации?

Anon
23.03.2017
14:05:20
Я хочу, чтобы "абсолютно любой раут" с /foo на конце, ссылался на этот "абсолютно любой раут", для того и лямбда. Еще мне нужно перед тем как отрисовать этот "абсолютно любой раут" ранился произвольный код

я *path не просто так же написал

Andrey ?
23.03.2017
14:06:27
Осталось понять, зачем тут лябмда

Антон
23.03.2017
14:06:36
Anon
23.03.2017
14:08:16
constraints же просто ограничения накладывает, или я не туда смотрю?

Антон
23.03.2017
14:10:09
ну сделай to: AwesomeRouter.call(request)

и опиши этот AwesomeRouter

Anon
23.03.2017
14:11:31
а request у меня откуда?

без лямбды-то

Антон
23.03.2017
14:15:35
а я не помню, но он так где-то есть

нагугли

когда-то давно делали такое, работало

ojab
23.03.2017
14:28:13
суть в том, что что-то ожидается от лямбды, но не строка. Может я должен что-то добавить/изменить в передаваемый req и его вернуть, но я не могу нагуглить что
от лямбды ожидается ответ в формате понятном для rack, i. e. [http_code, headers, response_body]. Любой инстанс контроллера — rack app/lambda, которой можно передать запрос. Так что нужно что-то в духе ->(req) { MyController.new(:index).call(req) }.

Anon
23.03.2017
14:30:14
Спасибо огромное

Страница 950 из 1684