@rubylang

Страница 1051 из 1684
Василий
08.06.2017
13:14:33
a = 0.3 b = 0.2 (BigDecimal.new(a.to_s) - BigDecimal(b.to_s)).to_f => 0.1

Но выглядит криво((

Михаил
08.06.2017
13:25:23
(a -b).round(2)

Смерть
08.06.2017
13:27:30
Не сработает, если a и b меньше 0.1

Google
Михаил
08.06.2017
13:29:18
(a -b).round(10) :)

Andrey
08.06.2017
13:30:39
a = 0.3 b = 0.2 (BigDecimal.new(a.to_s) - BigDecimal(b.to_s)).to_f => 0.1
require 'bigdecimal' a = 0.3 b = 0.2 puts (BigDecimal.new(a.to_s)-b).to_f чуток покороче вариант.

Denis
08.06.2017
13:30:44


ojab

ojab
08.06.2017
13:32:04
не вижу смысла читать код, пока ты не сообщищь что он в теории должен делать

(с БД, не со вкладками)

Denis
08.06.2017
13:32:44
он работает



Andrey
08.06.2017
13:33:57
a = 0.3 b = 0.2 (BigDecimal.new(a.to_s) - BigDecimal(b.to_s)).to_f => 0.1
Вот еще более извращенный вариант :))) a = 0.3 b = 0.1 class Float require 'bigdecimal' def - value (BigDecimal.new(self.to_s) - value).to_f end end puts a-b # => 0.2

Денис
08.06.2017
14:01:56
Ищу разработчика Ruby On Rails для участия в разработке проекта, связанного с криптовалютами. - опыт разработки на ROR от 3 лет (подтвержденный портфолио) - опыт командной разработки, CI - знание git - mysql, redis - продвинутый уровень, оптимизация запросов mysql - знание AMQP (RabbitMQ) - общее представление о криптовалютах - JS и Jquery, coffee - уверенное знание - основы построения Realtime Web-приложений на основе веб-сокетов Формат работы - удаленная, по задачам. Оплата почасовая. (1000 - 1500 рублей (российских) за час) За подробностями в личку. #работа

Nursultan
08.06.2017
16:27:37
Всем привет

Aldar
08.06.2017
16:28:32
neprivet.ru

Nursultan
08.06.2017
16:29:24
есть проблема. поставили валидацию по IP адресу и доступ к некоторым страницам на сайте. до этого все было нормально. Сейчас такая проблема что он жалуется на что то про рендеры и ретурны

Google
ojab
08.06.2017
16:30:23
нужно что-то починить, вестимо

Nursultan
08.06.2017
16:30:34


меняешь вручную ip адрес имеется ввиду в сообщении

ojab
08.06.2017
16:31:25
ну, собственно, как и написано — render/redirect вызывается в контроллере несколько раз для одного и того же запроса

смотри где оно вызывается и делай чтобы вызывалось один раз

Nursultan
08.06.2017
16:32:35
вот контроллер if current_user.first_ip == current_user.current_sign_in_ip @task = @tasks.find(params[:id]) @next_task = @task.next @prev_task = @task.prev else flash[:notice] = "Вы зашли с нового места" return redirect_to project end тот фрагмент на который он жалуется

раньше return не было

ojab
08.06.2017
16:35:12
значит где-то redirect или render перед или после фрагмента, очевидно

проще всего binding.pry в начала action'a сделать и тупо пройтись до по контроллеру до ответа

Nursultan
08.06.2017
16:36:43
https://github.com/Nursultan91/t1-alfa/blob/master/app/controllers/task_controller.rb вот файл

ojab
08.06.2017
16:38:01
страшненький

Nursultan
08.06.2017
16:38:09
Знаю)

ojab
08.06.2017
16:38:22
прозреваю что если везде redirect заменить на return redirect — будет работать

очевидно что может выполняться несколько редиректов, если !joined && project.price != 0 && current_user.first_ip != current_user.current_sign_in_ip

ojab
08.06.2017
16:41:43
redirect не прерывает выполнение метода

Klim
08.06.2017
16:43:09
@task = @tasks.find(params[:id]) @next_task = @task.next @prev_task = @task.prev это очень просится в отдельный метод.

Hard
08.06.2017
16:48:02
devise :database_authenticatable, :registerable, :confirmable, :recoverable, :rememberable, :trackable, :validatable, :omniauthable, :lastseenable Конфликтует lastseenable и omniathuable Если добавляю поле :lastseenable при регистрации по соц.сети выбивает ошибку якобы email is invalid

Google
Hard
08.06.2017
16:49:44
Напишите еще раз пожалуйста

Hard
08.06.2017
16:51:19
https://github.com/ctide/devise_lastseenable подключал этот гем

Nursultan
08.06.2017
16:53:01
слушайте а можно ли на убунте с одного терминала запустить сервер а с дургого генерить миграции и т.д. имею ввиду использовать как будто сервер не запущен

Смерть
08.06.2017
16:55:46
https://github.com/ctide/devise_lastseenable подключал этот гем
Напиши свою реализацию, это делается одним полем в модели и одним хуком в хонтроллере

Hard
08.06.2017
16:57:06
Напиши свою реализацию, это делается одним полем в модели и одним хуком в хонтроллере
devise ..., :lastseenable ( добавил lastseen в моделе User ) <%= User.where('last_seen > ?', 15.minutes.ago).count %> ( Вызвал в вьюшке )

Все работает нормально, но не работает omniauth

Вот что говорят логи

ojab
08.06.2017
17:02:08
Вот что говорят логи
в gist, здесь это длинно и нечитабельно

Hard
08.06.2017
17:06:08
https://gist.github.com/HardNeal/2c7b65c3c77d481d072080d4edf9467d

Nursultan
08.06.2017
17:07:30
Hard
08.06.2017
17:08:58
Вот логи https://gist.github.com/HardNeal/a7617a342eef40e7a850c4e522ab482e

ojab
08.06.2017
17:11:38
Вот логи https://gist.github.com/HardNeal/a7617a342eef40e7a850c4e522ab482e
Смотри User.find(20), скорее всего у него email.nil?, а добавление omniauthable создало колонку email NOT NULL. Соответственно теперь этого юзера нельзя обновить.

Admin
ERROR: S client not available

ojab
08.06.2017
17:12:20
и конфликта нет, просто существующие в таблице данные невалидны для текущих ограничений (i. e. NOT NULL)

Hard
08.06.2017
17:15:00
email: "change@me-2984501429-twitter.com"

email не нил

Google
Hard
08.06.2017
17:15:37
По сути после перехода с соц.сети ему открывается форма для ввода почты, и обновляется информация

def finish_signup # authorize! :update, @user if request.patch? && params[:user][:email] #&& params[:user][:email] @user = User.find(params[:id]) if @user.update(user_params) @user.skip_reconfirmation! sign_in(@user, :bypass => true) flash[:balance] = "Вы зарегистрировались" redirect_to profiles_path else @show_errors = true end end end

ojab
08.06.2017
17:18:00
а, это я криво посмотрел на коммиты/роллбеки, да.

mkay, а при каком действии оно делает rollback? skip_reconfirmation!?

или при @user.update(user_params) на самом деле и в user_params невалидный email?

Nursultan
08.06.2017
17:22:15
Можно ли в моделях несколько валидаций для разных переменных подряд писать?

ojab
08.06.2017
17:25:59
лучше встань дебаггером и проверь ручками, лог ни о чём не говорит

Klim
08.06.2017
18:10:32
не валидный email
а ты не пробовал оставить валидацию только наличия? без всяких регэкспов.

ojab
08.06.2017
18:11:23
прозреваю что email валидирует не он, а какой-то из гемов

Klim
08.06.2017
18:14:32
вот так вот хардово прям? дерзкий гем.

Hard
08.06.2017
18:18:14
Как можно узнать залогиненых юзеров? Без lastseen`а

по активных сессиям или через что либо

ojab
08.06.2017
18:21:45
проблема не в lastseen, проблема в том что у тебя в БД невалидные пользователи

Hard
08.06.2017
18:25:02
я это понял

ojab
08.06.2017
18:27:02
ничто не мешает проапдейтить невалидные email в "#{user.id}@example.com" и юзать lastseen, например

Google
ojab
08.06.2017
18:27:44
или, если они всё же нужны, в любой обратимый валидный email

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