@rubylang

Страница 1517 из 1684
Nursultan
30.05.2018
05:36:54
1
все ясно)

1
теперь я понял наших клиентов) и кто они)

Nikita
30.05.2018
05:38:03
а как это исправить?
Нужно бахнуть сиды в прод базу

Google
0x58
30.05.2018
05:38:26
ну сиды вообще не для заполнения прод базы но попробуй добавить RAILS_ENV=production

Nursultan
30.05.2018
05:38:42
Нужно бахнуть сиды в прод базу
мне надо ввести в гугл heroku run rails seed production?

Nikita
30.05.2018
05:38:58
Nursultan
30.05.2018
05:39:40
бля стажер оказывается написал в сидах ) if Rails.env.development? а я не заметил)

Nikita
30.05.2018
05:40:01
И правильно сделал))

0x58
30.05.2018
05:41:15
Не знаю как на хероку, на обычном сервере это было бы как rake db:seed RAILS_ENV=production

Silent Bob
30.05.2018
06:47:58
Вопрос - какое максимальное число concurrent jobs at the same time в дефолтном rails 5 асунсовом адаптере? (Active Job Async). К примеру у сайдкика можно в конфиге задать https://github.com/mperham/sidekiq/wiki/Advanced-Options concurrency опцию

Александр
30.05.2018
07:41:32
Приветствую всех, я к вам с таким кейсом: Есть аватары, есть пользователи. Аватары загружаются отдельно(в AWS), пользователи создаются отдельно. На сайте есть форма создания пользователя, там можно выбрать аватар, заполнить информацию и нажать сохранить. Проблема в том, что если пользователь выберет аватар и нажмет кнопку "отмена"(или уйдет со страницы) у нас появится безхозный аватар. Я думал сделать так, при нажатии кнопки, создать пользователя отправить его id на фронт, и уже к нему прикреплять аватар. Но опят же в случает отмены(ухода со странциы), у нас теперь получится невалидный(ненужный) пользователь. Есть ли в рельсах механизм позволяющий как-то обойти эти кейсы?

Aleksey
30.05.2018
07:54:02
не загружать аватар на s3 до отправки всей формы - это слишком просто, да?

Александр
30.05.2018
08:02:43
не загружать аватар на s3 до отправки всей формы - это слишком просто, да?
а если что-то пойдет не так при загрузки аватара? Или пользователь нажмет сохранить и не дождется заливки аватара

Хотя вы навели меня на мысль, спасибо

Aleksey
30.05.2018
08:06:29
1) по-моему кейс высосан из пальца, аватар весит ну максимум метр, чаще в пределах 200-500кб 2) если юзер таки имеет ультрамедлнный инет и жуткий свербеж в одном месте, и таки закрыл браузер во время аплоада - ну не загрузится аватар, потом догрузит через настройки

Google
Andrey
30.05.2018
11:34:27
Всем привет! Подскажите, чем лучше прооптимизировать картинки для pagespeed? Картинок много — на 19 гигов. И сколько ставить качество, чтоб не прогадать?

Смерть
30.05.2018
11:35:41
В каком они формате?

Andrey
30.05.2018
11:37:44
jpg

Смерть
30.05.2018
11:50:46
jpegoptim

Yegor
30.05.2018
12:01:50
У меня новая статья на блоге, про валидацию объектов в конструкторе (примеры на Ruby): https://www.yegor256.com/2018/05/29/object-validation.html

Pavel
30.05.2018
12:42:55
Но это ИМХО конечн

Yegor
30.05.2018
13:14:28
Lavrushchik
30.05.2018
14:01:56
Народ, подскажите. Селениум выкидает Selenium::WebDriver::Error::UnhandledAlertError (unexpected alert open) обычный rescue Selenium::WebDriver::Error::UnhandledAlertError не помогает. как можно подправить?

spartakusQ
30.05.2018
18:25:13
народ а подскажите актуальность книг по руби — The Ruby Programming Language Дэвид Флэнаган, Ю. Мацумото или же ruby way 3rd edition

Vasiliy
30.05.2018
18:36:31
Актуально

brute11k
30.05.2018
19:39:09
Правильно ли я получаю пользователя в devise-jwt, или есть способ попроще? Может есть какой-нибудь встроенный метод?



Nikita
30.05.2018
19:56:54
Сделай лучше наверное find_by(id: ...)

А то может беда быть

brute11k
30.05.2018
19:58:08
То есть, в целом, я более-менее грамотно написал этот метод?

ojab
30.05.2018
19:59:23
нет, JWT надо валидировать

Alexander
30.05.2018
19:59:49
brute11k
30.05.2018
20:00:54
Валидация происходит через https://github.com/waiting-for-dev/devise-jwt, хотя я не пробовал подменить пользователя

ojab
30.05.2018
20:01:52
а оно само current_user не выставляет?

Google
brute11k
30.05.2018
20:02:04
То есть у меня в контроллере стоит before_action :authenticate_user!, only: [:create]

а оно само current_user не выставляет?
В том-то и дело, что, видимо, нет.

Я долго и упорно пытался найти ответ на этот вопрос, но безуспешно. В итоге сам написал такой костыль

Ещё я хотел бы написать тест на истечение срока годности токена, вот только не знаю, сработает ли travel_to

Darth
30.05.2018
20:44:26
Почему это?

Сделай лучше наверное find_by(id: ...)

А то может беда быть

Ilya
30.05.2018
21:26:28
Почему это?
find в случае отсутсвия вернет ошибку record not found. find_by в случае отсутствия вернет nil

Ilya
30.05.2018
21:27:34
Это не ответ на вопрос )
я пояснил почему) чтобы избежать ошибки видимо, если Никита это имел ввиду

@nikitabatrak

Nikita
30.05.2018
21:29:03
Очевидно, что это) Может 500 быть

Ilya
30.05.2018
21:29:35
ну вот)

brute11k
30.05.2018
21:37:07
Наверное, глупый вопрос, но как прервать выполнение в application_controller и вернуть render json: ...? Я пытаюсь проверить заголовок Authorization и вернуть ошибку в виде json.

Пробовал head 401, throw :abort, return json: { ... }, status: 401,

В spec/requests/cart_spec.rb проверяю expect(response).to have_http_status(:unauthorized)

Попробую :before_action ещё.

Я понял почему у меня ничего не работает. before_action :authenticate_user! должен стоять перед всеми остальными обработчиками...

И current_user работает, и user_signed_in

Ēľ Ċāƥīāŋ Ƭīʋȷɍēś
31.05.2018
06:28:44
Google
Ēľ Ċāƥīāŋ Ƭīʋȷɍēś
31.05.2018
06:29:04
Если актуально ещё, а там уже по форматам разбирай

brute11k
31.05.2018
06:30:30
Если актуально ещё, а там уже по форматам разбирай
А я думал эта штука просто задаёт, на какой формат запросов отвечать

Типа respond_to :json

Ēľ Ċāƥīāŋ Ƭīʋȷɍēś
31.05.2018
06:31:06
А я думал эта штука просто задаёт, на какой формат запросов отвечать
Ну собственно да, а там уже пишешь после do |format|

format.js/json/http

И каждым свою логику можешь воротить

Admin
ERROR: S client not available

brute11k
31.05.2018
06:33:06
И каждым свою логику можешь воротить
Хорошо, посмотрю примеры. А вообще я просто неправильно rspec использовал. Мне нужно было использовать raises вместо have_http_status

Ēľ Ċāƥīāŋ Ƭīʋȷɍēś
31.05.2018
06:33:19


Рендерит там файл destroy.js.erb

Собственно это для js

brute11k
31.05.2018
06:35:19
Собственно это для js
Я всё таки не пойму, почему я не могу просто стопнуть выполнение и отрендерить любой json вручную

Типа как в php

Ēľ Ċāƥīāŋ Ƭīʋȷɍēś
31.05.2018
06:35:51
Покажите лучше код

brute11k
31.05.2018
06:44:35
Покажите лучше код
С мобильника сложновато. ../application_controller.rb def check_user if current_user.nil? return render json: { error: 'test' } exit(1) end ../cart_controller.rb def show render json: { cart: { etc: '...' } } # появляется ошибка, мол нельзя два раза вызывать render end

Silent Bob
31.05.2018
06:46:54
Подскажите, а все джобы взаимодействующие с AR нужно заворачивать в ActiveRecord::Base.connection_pool.with_connection do ? Т.е. def perform(user) ActiveRecord::Base.connection_pool.with_connection do # user.update() end end Об этом прямо говорится для sucker_punch https://github.com/brandonhilkert/sucker_punch#activerecord-connection-pool-connections , а как насчет Sidekiq?

brute11k
31.05.2018
06:47:47
Я просто не знаю, как правильно в таких случаях нужно писать :D

Ēľ Ċāƥīāŋ Ƭīʋȷɍēś
31.05.2018
06:47:59
С мобильника сложновато. ../application_controller.rb def check_user if current_user.nil? return render json: { error: 'test' } exit(1) end ../cart_controller.rb def show render json: { cart: { etc: '...' } } # появляется ошибка, мол нельзя два раза вызывать render end
Если честно я нашел решение за минуту по поиску rails render custom json. Если за день не справитесь - могу вечером помочь. Пока что работа

brute11k
31.05.2018
06:50:58
Если честно я нашел решение за минуту по поиску rails render custom json. Если за день не справитесь - могу вечером помочь. Пока что работа
Да пока не горит, я тоже часа 2-3 потратил на поиск, но внятного объяснения процесса не нашёл. Придётся курить маны. Мне это нужно было, когда я не разобрался с devise толком. Сейчас всё работает. Но все равно хочу иметь 100% понимание, как работает фреймворк

Google
Кøе-ктø Геннадьевич
31.05.2018
07:47:49
А может быть такое, что у тебя контроллеры наследуются от апликейшн контроллера. И получается, что у тебя что-то рендерится в апликейшне и что-то в карт? Вот он и ругается на два раза

Vitaly
31.05.2018
08:00:53
https://stimulusjs.org/

про реакты можно забыть?

Ilya
31.05.2018
08:04:25
а чем он лучше того же реакта, вью, ангуляра и прочих?

такие фреймворки каждый день выходят если что)

Vitaly
31.05.2018
08:05:13
порог вхождения ниже и более понятен

Ilya
31.05.2018
08:05:44
а у вью и реакта высокий порог входа?) куча школьников начинают писать на реакте после месяца изучения

Vitaly
31.05.2018
08:05:47
ну это мое имхо

Кøе-ктø Геннадьевич
31.05.2018
08:12:40
Руби мертвы

No
31.05.2018
08:13:51
Мне кажется за эту фразу пора уже банить

Ибо о покойнике либо хорошо

Либо ничего

Aleksey
31.05.2018
08:15:28
есть рубиновая свадьба, а тут рубиновые похороны

Кøе-ктø Геннадьевич
31.05.2018
08:17:54
Либо ничего
Там на самом деле "либо правду"

No
31.05.2018
08:32:17
если правду, то шутка про "руби мёртв" не актуальна )

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