@rubyschool

Страница 447 из 921
Aleksey
15.11.2017
06:20:40
scope :published_in_second_week, -> { where(created_at: DateTime.now.change(day: 8).at_beginning_of_day..DateTime.now.change(day: 14).at_end_of_day) }вот так заработало

Fedor
15.11.2017
06:24:43
Ну у тебя зоны разъехались, судя по всему

Скорее всего ты пару часов с одного конца теряешь

Лучше разобраться что бы время точно совпадало, а то потом окажется, что данные где-то разъехались и будешь долго искать баги

Google
Fedor
15.11.2017
06:28:43
Time.now берет системное время

Так что так и должно быть

Вопрос, что при этом в бд хранится

Есть ли там зона вообще?

Это надо прям в бд смотреть

Aleksey
15.11.2017
06:29:33
а все понял

да, 3 часа разницы

надо значит создавать в базу с указанием зоны, верно?

Fedor
15.11.2017
06:30:47
Да

Aleksey
15.11.2017
06:30:51
а рельса откуда береть вообще зону при автоматическом создании created_at поля?

Google
Fedor
15.11.2017
06:30:58
Сначала проверь тип поля в базе

Aleksey
15.11.2017
06:31:09
applocation.rb

?

Fedor
15.11.2017
06:31:21
Тоже системное по идее

Aleksey
15.11.2017
06:31:38
t.datetime

Fedor
15.11.2017
06:31:39
Не это прям в бд смотреть надо

Делаешь rails db в консоли

И там \d+ table_name

Если постгрес

Aleksey
15.11.2017
06:33:42
timestamp without time zone

Fedor
15.11.2017
06:33:44
Или show table чего-то там в мускуле

Ага, ну вот

Aleksey
15.11.2017
06:34:04
вот в чем прикол короче там UTC

а у меня +3

такая как раз разница и есть

Fedor
15.11.2017
06:34:27
Ну вот добавь тайм зону

Aleksey
15.11.2017
06:34:33
Снова спасибо Федор)))

Fedor
15.11.2017
06:34:45
Или все полученное из базы править придется

Не за что

Aleksey
15.11.2017
06:35:27
Да это не проблема, там пара записей, зато дальше будет все как надо)

Google
Denis
15.11.2017
06:49:13
Привет Чуваки :)

помогите распарсить Json

http://api.walmartlabs.com/v1/items/20000000?format=json&apiKey=cv72bfkfxtfgc2jrdku3se2w

вот известная контора выдает выдачу в Json

а JSON.parse сопротивляется и кричит что тут октетов не хватает

Vlad
15.11.2017
07:47:57
МАСТЕР ну Json то скинь, по ссылке не выдает

Denis
15.11.2017
07:53:18
Чего Влад?

самое странное что перл у меня жрал спокойно этот джейсон

бывали залупки но редко

Maxim
15.11.2017
07:58:54
Этот JSON? { "errors": [ { "code": 4002, "message": "Invalid itemId" } ] }

Vlad
15.11.2017
08:05:36
2.4.0 :001 > json = '{"errors":[{"code":4002,"message":"Invalid itemId"}]}' => "{\"errors\":[{\"code\":4002,\"message\":\"Invalid itemId\"}]}" 2.4.0 :002 > require 'json' => true 2.4.0 :003 > parsed = JSON.parse(json) => {"errors"=>[{"code"=>4002, "message"=>"Invalid itemId"}]} 2.4.0 :004 > parsed["errors"] => [{"code"=>4002, "message"=>"Invalid itemId"}]

Этот парсится) Скорее всего другой таки с инфой не парсится у него)

Maxim
15.11.2017
08:06:40
Ну да, наверное ссылка не та, этот JSON вполне себе валидный )

Vlad
15.11.2017
08:08:15
http://api.walmartlabs.com/v1/items/12417832?format=json&apiKey=cv72bfkfxtfgc2jrdku3se2w

Даже тут парсится

Maxim
15.11.2017
08:13:21
ну да, все чётенько )

Denis
15.11.2017
10:38:24
Так чуваки выкладываю код а вы его хаите

@link = "http://api.walmartlabs.com/v1/items/#{@id}?format=json&apiKey=cv72bfkfxtfgc2jrdku3se2w" browser = Watir::Browser.start @link html = browser.html @html = Nokogiri::HTML(html) json = @html.css("pre").text browser.close @json = JSON.parse(json)

вот так я его жру

хотя странно я смотрел исходник страницы нету там htmlа ну нету а где руби его находит - тайна

Google
Denis
15.11.2017
10:41:03
потому что перл например жрет json сразу с листа и без всяких трансформаций как тут

(тока перл иногда тоже ошибками кидает но редко редко, и как их обрабатывать я чета не знаю потому что ни разу не ловил ошибки в перле)

Vlad
15.11.2017
10:45:41
Месье знает толк в извращениях...

С API не работают через браузер, на то оно и API :)

require 'net/http' require 'json' url = 'http://api.walmartlabs.com/v1/items/12417832?format=json&apiKey=cv72bfkfxtfgc2jrdku3se2w' uri = URI(url) response = Net::HTTP.get(uri) json = JSON.parse(response)

Достаточно простого встроенно в рубячку HTTP клиента и простого GET запроса. Ты же открываешь API через реальный браузер, не надо так. И никому не рассказывай, что так делал, если будешь устраиваться на работу куда-нибудь.

Nikolay
15.11.2017
11:49:45
Httparty хороший гем

Vitaly
15.11.2017
12:42:13
Ребятаааа

Admin
ERROR: S client not available

Vitaly
15.11.2017
12:42:22
Кто-нибудь сейчас в учи ру работает?

Konstantin
15.11.2017
12:56:59
Нет, но мы одного паренька оттуда, вроде, переманили

Кто-то, вроде, тут работал в учи.ру

Vitaly
15.11.2017
13:10:38
Что паренёк говорил про компанию?

Какую ЗП вы ему предложили?

Di
15.11.2017
13:33:47
Где то попадалась статья разгромная про них, не помню где только. Плохие условия в офисе, низкая зп, текучка вот это всё. Руководство жмет типа большое дело делаем, так что давайте на энтузиазме тащите.

Dmitry
15.11.2017
13:37:10
Ну мне когда тестовое там давали, я спросил чюа что по срокам, чел сказал что да хоть через полгода, у нас всегда нужны рубисты)))

Alex
15.11.2017
14:53:06
Что делать с такими потенциальными работодателями? Спрашиваю: Какие у Вас условия работы? Отвечают: Какие у Вас ожидания в деньгах?

Наверное если бы я сам хотел сказать свою ставку - я бы сказал сразу

Konstantin
15.11.2017
15:08:49
Какую ЗП вы ему предложили?
Я хз, он не разраб :)

Ro
15.11.2017
16:27:28
бесплатную лицензию получил от jetbrains на все продукты

Google
Ro
15.11.2017
16:28:53


вот!

Alex
15.11.2017
16:30:01
Поздравляю, как преподаватель подавал?

Vlad
15.11.2017
16:30:58
А что надо сделить? Читерить надо? Я в прошлом году от Github получил Student Pack с читерством. Теперь гитхаб до 2020 года проплачен, можно юзать приватные репозитории)

Alex
15.11.2017
16:31:01
а, вижу как opensource

Ilya
15.11.2017
16:32:14
Студентам дают на время обучения бесплатно и на гитхабе и джетбрейнс

Alex
15.11.2017
16:32:29
Также стоит помнить об одной важной особенности — если вы не являетесь студентом и запросили «Student Pack», обманув GitHub и всё Open Source сообщество, в следующей жизни вы будете земляным червем.

Ro
15.11.2017
16:32:59
Di
15.11.2017
17:09:19
А в рельсе когда в контроллер данные приходит есть какая то неявная фильтрация? Например форма вводе имейла, у меня конечно форма проверяет валидность имейла и не дает сабмитить если там что то не так, но это на стороне клиента. Если же каким то образом мне в парамсы пришлют в обход имейл с пробелом на конце например или в начале, рельса не будет строку очищать и фильтровать неявно?

Alex
15.11.2017
17:13:18
сама по себе - нет

Di
15.11.2017
17:30:43
Ну а причесывать данные в таком случае лучше в модели или в контроллере?

Alex
15.11.2017
17:33:18
все валидации в моделях, контроллер для этого не предназначен

Di
15.11.2017
17:37:14
Спс

Антон
15.11.2017
18:11:29
Ну а причесывать данные в таком случае лучше в модели или в контроллере?
У нас для этого есть отдельные валидаторы, лежат в своей папке и модель не захламляют

Антон
15.11.2017
18:12:52
Минут через 10 до компа доберусь и скину

Alex
15.11.2017
18:17:35
Добрый вечер, пожскажите кто-нибудь проходил курсы на html-academy ? это достаточный уровень знания html/css ? я планирую пройти там курсы и может интенсив глянуть с торентов, пройти курсы по javascript на hexlet и сейчас прохожу Ruby по вашему курсы

Антон
15.11.2017
18:17:35
В app/validators/name_validator.rb https://paste2.org/KpJnUa1v

Соответственно для валидации достаточно указать validates :name, name: true

Страница 447 из 921