@rubylang

Страница 1312 из 1684
Roman
25.12.2017
13:57:50
а, ок понял)

сложно не знать SQL :(

Mikhail
25.12.2017
13:58:29
его можно просто загуглить или юзать простые запросы

типа такого where("date_from <= ?", Date.current) и тд

Google
Roman
25.12.2017
14:00:43
Mikhail
25.12.2017
14:01:26
ну да, тоже сработало бы
когда не можешь найти хелп на запрос, смени ar и rails в запросе на sql. Я вот ща вбил sql date in 2 columns он мне сразу результат дал) в 90% случаях находится запрос.

Evgenii
25.12.2017
15:25:50
Добрый вечер, подскажите пожалуйста - в продакшене лог раздувается до немыслемых размеров,забивает память сервера и вообще снижает быстроедействие. есть ли способы как-то рельсам насильно указать что в лог вносить или вообще ограничить его размер принудительно?

Vasiliy
25.12.2017
15:28:19
в config/environments/production.rb log_level убавь на какой тебе надо

Evgenii
25.12.2017
15:29:54
Благодарю, сейчас гляну

Artur
25.12.2017
15:35:55
ну и logrotate можно настроить

Evgenii
25.12.2017
15:45:40
Да вот тоже читаю что за зверь. спасибо большое

Oleg
25.12.2017
17:17:45
Добрый вечер. Как бороться с ошибкой, когда пользователь регистрируется(использую гем - devise) с ошибочных email адресом и ему сервер отдает 500 ошибку, как отловить этот эксцепшн или проверить заранее, существует ли данный емейл в природе?

Shamil
25.12.2017
17:23:43
Добрый вечер. Как бороться с ошибкой, когда пользователь регистрируется(использую гем - devise) с ошибочных email адресом и ему сервер отдает 500 ошибку, как отловить этот эксцепшн или проверить заранее, существует ли данный емейл в природе?
Вспомним как работает confirmable в девайсе. Посылаешь ссылку на почту. Если пользователь по ней перейдет - значит есть почта. Если не перешел по ссылке - значит не то мыло или нет мыла. (хотя есть сервис для создания 10минутных почтовых ящиков, но не суть). Подходит?

500 ошибка - это у тебя на сервере проблема значит а не у пользователя.

Oleg
25.12.2017
17:25:00
Нет, если бы было оно так, но rails выдает 500 ошибку такую: A Net::SMTPServerBusy occurred in users#create: 450 4.1.2 <123@gmail.ru>: Recipient address rejected: Domain not found

Shamil
25.12.2017
17:30:05
Можете поставить обработчик исключения в контроллере, пусть реагирует на это с сообщением о несуществующей почте и рисует опять форму. Создайте свой контроллер (у девайса там есть в описании как и что) и ловите ее там. Хотя мне кажется у девайся есть и на такой случай что-то в документации.

Google
Shamil
25.12.2017
17:30:26
Эксепшен в смысле.

Oleg
25.12.2017
17:33:13
Попробую доку еще почитать

Adamtsov
25.12.2017
17:45:07
Оптимальный вариант - слать письма в бекграунде

Pavel
25.12.2017
18:02:26
Всем привет. Очередной вопрос по codewars в студии :) https://www.codewars.com/kata/are-they-the-same/train/ruby Ката def comp(array1, array2) if array1 != nil && array2 != nil && array1 != [] && array2 !=[] newarr = array2.map {|x| x = Math.sqrt(x).to_i} result = newarr - array1 result.empty? else false end end

Учел вроде бы все моменты. Проверка каждого массива пустой или нет, проверка nil. Но все равно ругается в двух тестах.

Oleg
25.12.2017
18:03:18
Оптимальный вариант - слать письма в бекграунде
все таки проще ошибку выдать для "современных" людей, которые указывают вместо gmail.com -> gmail.ru

Pavel
25.12.2017
18:03:22
http://take.ms/1ZU11

Oleg
25.12.2017
18:04:18
сделал вариант через exception

Adamtsov
25.12.2017
18:04:19
все таки проще ошибку выдать для "современных" людей, которые указывают вместо gmail.com -> gmail.ru
А если почтовик забанят или ещё что то пойдёт не так, пользователь увидит 500

Oleg
25.12.2017
18:04:47
почтовик чей? с которого шлются емейлы?

Adamtsov
25.12.2017
18:05:10
Да

Oleg
25.12.2017
18:05:37
так и так сервер пытается отправить письмо на указанный емейл

как от этого защититься тогда?

заранее ведь не знаешь, существует ли указанный емейл или нет

Adamtsov
25.12.2017
18:07:03
Тут в другом идея, что отправка писем должна в фоновом режиме выполняться

Oleg
25.12.2017
18:08:20
Однозначно согласен

потом только пользователи оставляют отзывы - письма не приходят и единичка)

тут удобнее(для пользователя) "сказать" емейл несуществует, либо введен некорректно

это единственная отправка писем, которая работает не в фоне

Google
Dmitry
25.12.2017
18:12:01
Может не стоит с такими "пользователями" связываться, которые свой емаил не могут ввести?

Pavel
25.12.2017
18:12:21
Иван
25.12.2017
18:12:58
у тебя лишняя проверка

Pavel
25.12.2017
18:13:01
Хм, действительно

http://take.ms/oJ7Mp

Стало лучше :) Но недостаточно. Сейчас код такой: def comp(array1, array2) if ((!array1.nil?) && (!array2.nil?)) newarr = array2.map {|x| x = Math.sqrt(x).to_i} result = newarr - array1 result.empty? else false end end

Иван
25.12.2017
18:14:35
в самое начало метода добавь - p array1, array2

и посмотри на каких массивах падает

тогда догадаешься где ошибка

Pavel
25.12.2017
18:16:04
Вот этот хинт - золотой

Иван, от души

Pavel
25.12.2017
19:42:53
тогда догадаешься где ошибка
перефигачил всю кату под прошлую ошибку - вылезла новая

class Array def delete_elements_in(ary) ary.each do |x| if index = index(x) delete_at(index) end end end end def comp(array1, array2) p array1, array2 newarr = array2.map {|x| x = Math.sqrt(x).to_i} newarr.delete_elements_in(array1).empty? end

http://take.ms/07PKp

Вот этот вариант в стороннем IDE отрабатывает как true, но в codewars как false

Я замечал пару раз что codewars иногда очень странно тесты прогоняет, тем не менее не могу найти из-за чего переворачивается true/false

Иван
25.12.2017
20:02:14
намудрил ты что то, не надо манкипатчить Array класс для решения это задачи

да и этот метод будет всегда возвращать то что ты ему передал в качестве аргумента

Pavel
25.12.2017
21:10:21
да и этот метод будет всегда возвращать то что ты ему передал в качестве аргумента
Мне показалось что поочередное удаление из массивов совпадающих индексов - самый верный инструмент против ситуации [2, 3, 3] - [2, 2, 3] = [].empty?. Которая отдает true. Хотя это false по условиям задачи. Или есть более простой вариант?

Google
Иван
25.12.2017
21:11:26
ты удаляешь, но посмотри что твой метод возвращает

можешь просто отсортировать 2 массива и проверить их через ==

Pavel
25.12.2017
21:14:16
Мне кажется я слишком долго смотрел в этот код

Все, я понял

Иван, спасибо тебе большое

Admin
ERROR: S client not available

Eugene
25.12.2017
23:07:13
можно через вектор)

require 'matrix' def comp(array1, array2) !!unless array1.nil? || array2.nil? || (array1.count != array2.count) (Vector[*array1.map{|i| i**2}.sort] - Vector[*array2.sort]).to_a - [0] == [] end end

Alexey
26.12.2017
05:19:49
def comp(a, b) a&.sort&.map { |i| i ** 2 } == b&.sort end

Pavel
26.12.2017
07:42:32
def comp(a, b) a&.sort&.map { |i| i ** 2 } == b&.sort end
Да, это было самое верное решение + проверка на nil

Nursultan
26.12.2017
09:47:43
Всем привет

сделал на сайте поиск через pg search trigram

но когда ввожу поиск он выдает кучу левых данных



никто не знает как изменить это чтобы поиск был более точный

но при этом и допускал ошибки

например если ввели Алескандр он выдавал Александр и т.д.

Допускал ошибки имею ввиду принимая данные выдавал еще и похожие результаты

Artur
26.12.2017
09:54:58
триграммы так и работатют. Але лек еле екс и тд

Google
Eugene
26.12.2017
10:13:39
Точнее, увеличь))

https://github.com/Casecommons/pg_search#threshold

Volodymyr
26.12.2017
18:21:20
Думаешь вложиться в криптовалюты? Думаешь у тебя что либо получится? На всех каналах тебе говорят вкладываться и у тебя будет много денег? Нет, это не так, у тебя ничего не получится и тут @seventhcnala ты узнаешь почему.

Думаешь вложиться в криптовалюты? Думаешь у тебя что либо получится? На всех каналах тебе говорят вкладываться и у тебя будет много денег? Нет, это не так, у тебя ничего не получится и тут @seventhcnala ты узнаешь почему.

Думаешь вложиться в криптовалюты? Думаешь у тебя что либо получится? На всех каналах тебе говорят вкладываться и у тебя будет много денег? Нет, это не так, у тебя ничего не получится и тут @seventhcnala ты узнаешь почему.

Антон
26.12.2017
19:07:24
банхамммер рекваиред

Vladislav
26.12.2017
19:22:03


Здравствуйте. Кто работал с Vagrant? Я хочу установить box с rails, но он мне выдаёт ошибку

Artur
26.12.2017
19:23:59
ааа. некрофил в треде

Антон
26.12.2017
20:05:55
Vladislav
26.12.2017
20:06:15
да

Антон
26.12.2017
20:06:41
говорят, что это как анальный секс, начинает нравиться с третьего раза

Антон
26.12.2017
20:09:52
ахахахаа

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