
Vladimir
15.01.2018
18:16:35
джоины попёрли ..)

Райлян
16.01.2018
08:38:08
Здрасте! Вопрос
если по какой-то причине мне нужно в модели использовать
raise ActiveRecord::RecordNotFound.new(error, :bla, :id)
то это исключение я могу видеть только в консоли, а как вывести текст ошибки в UI?

Антон
16.01.2018
10:16:12

Райлян
16.01.2018
10:17:09
errors.add(:blabla, 'text blalbabla')?

Google

Антон
16.01.2018
10:19:04
Типа того


Райлян
16.01.2018
12:15:47
Там ситуация значит следующая была:
есть Project
has_many :project_managers, through: :project_managements, class_name: 'User'
есть ProjectManagement
belongs_to :project
belongs_to :project_manager, class_name: 'User'
validates :project_manager, enabled: true, presence: true
Ну и User, понятно..
Проблема такая: если ProjectManager disabled,
то при Project#update в коллекции его нет, но, если его сделели disabled во время процесса update проекта и он был к select collection и если его выбрали, то приложение висло и только в консоли появлялось сообщение, нужно было сделать человеческое сообщение об ошибке и чтоб уже существующий ProjectManager в проекте даже если его сделали disable, чтоб не вызывал ошибку валидации...
#project_controller
def update
authorize! :update, :project
saved = true
ActiveRecord::Base.transaction(joinable: false) do
project_manager_ids = project_params[:project_manager_ids]
check_pm_availability = @project.check_pm_availability(project_manager_ids)
if check_pm_availability == false
saved = false
raise(ActiveRecord::Rollback)
else
@project.assign_attributes(update_params)
@project.assign_aggregate_info_from_deliverables
end
unless @project.save
saved = false
raise(ActiveRecord::Rollback)
end
end
respond_to do |format|
if saved
NotificationHandler::ProjectDeadline.new(@project).update
flash[:success] = 'Project was successfully updated.'
format.json { render json: {redirect_path: project_project_details_path(@project)}, status: :ok}
else
format.json { render json: @project.errors.full_messages, status: :unprocessable_entity }
end
format.html { redirect_to project_path(@project) }
end
end
#project.rb
def check_pm_availability(ids)
original_ids = project_manager_ids
ids = Array(ids).reject(&:blank?).map!(&:to_i)
target_ids = User.where(id: ids).ids
if original_ids.size < target_ids.size
@users_able_to_manage_projects = Project.users_able_to_manage_projects
new_candidate_project_managers = target_ids - original_ids
new_candidate_project_managers.each do |pm|
unless @users_able_to_manage_projects.include? User.find pm
errors.add(:project, "Project Manager #{User.find(pm).name} cannot manage project")
end
end
errors.any? ? false : true
end
end
private
def self.users_able_to_manage_projects
project_managers = User.project_managers.except_disabled
project_managers |= User.employee_dtp_specialists.except_disabled if Setting.current.internal_dtp_tenant
project_managers
end


Dmitry
16.01.2018
12:25:48
Оформляйте в виде gist на гитхаб
Сами то в телеграмме можете воспринимать такую простыню?

Fedor
16.01.2018
12:38:24
вот такое мне с апворка присылают

Olga
16.01.2018
12:40:55
отчаялись они ?

Vlad
16.01.2018
12:48:46
В resque ошибка, uninitialized constant MyWorker
Раз 5 сталкивался с такой проблемой, после праздников мозги отшибло почему Sidekiq не видит worker
UPD: Сам спросил сам ответил, запускал в девелопменте, sidekiq надо было перезагрузить

Райлян
16.01.2018
12:49:04

Dmitry
16.01.2018
12:51:53

Райлян
16.01.2018
12:52:12
)))
ok спасибо

Google

Райлян
16.01.2018
12:53:42
уже

Marina
16.01.2018
13:51:20
https://apidock.com/rails/ActiveSupport/Rescuable/ClassMethods/rescue_from возможно, это поможет @Vladimir_Railean

Alexander
16.01.2018
15:52:59
Здравствуйте. Подскажие пожалуйста почему сэндбокс себя так ведет? http://dl3.joxi.net/drive/2018/01/16/0001/1614/120398/98/094868dcea.jpg

Henry
16.01.2018
15:55:31
нет таблицы говорит users

Alex
16.01.2018
15:56:45
Да, модель скорее всего создали, а миграцию забыли

Alexander
16.01.2018
15:58:16
Ахах. Точно, все, приехали) Спасибо большое
Хотя странно я абсолютно был уверен, что миграцию делал и схему смотрел - там все было

Alex
16.01.2018
16:01:03
консоль потом перезапускали?

Alexander
16.01.2018
16:02:11
Да, вспомнил. У меня тесты модели не проходили после миграции, писало блаблабла выполните bin/rails db:migrate RAILS_ENV=test
Я выполнил - миграция прошла, схема появилась. тесты прошли
но видимо надо было еще раз просто миграцию запустить
Ага и консоль и даже перезагружался=))))

Alex
16.01.2018
16:10:08
Этой команда запускается миграция только для тестовой среды, в dev среде её не будет

Alexander
16.01.2018
16:13:09
То есть даже если миграция в деве проведена, то для test:models надо делать отдельную миграцию?
Это я просто Хартла по 5м рельсам читаю, и то ли я пропустил, то ли он просто это не оговаривает

Alex
16.01.2018
16:16:13
Если в деве миграция проведена, то в тесте отдельно проводить не нужно

Alexander
16.01.2018
16:18:38
Хммм, странно почему рельсы просили все же так сделать. Спасибо, буду знать)

Fedor
16.01.2018
16:30:55
Это зависит от настроек rake task на db:migrate
Оно может прогнать все миграции, а может не все

Vladimir
17.01.2018
08:37:20
кто в ладах с запуск задачи из Cron? 1. user > $ crontab -e (у меня всегда файл пользователя, не основной cron, сохраняется в /tmp...) ни одну задачу на локальной машине ещё не запустил

Google

Denis
17.01.2018
08:38:45
привет-привет-привет :))))

Dm
17.01.2018
08:38:55
Опа!
Ща начнется!

Denis
17.01.2018
08:39:02
парни подскажите в nokogiri русский запрос не проходит

Natalia
17.01.2018
08:39:26

Denis
17.01.2018
08:39:31
ruby google.rb
google.rb:11:in `initialize': No such file or directory @ rb_sysopen - https://www.google.ru/search?newwindow=1&dcr=0&ei=HfpeWtOkL4WP6ATvvYyYDg&q=hilicopter+gosha&oq=бублики горячие&gs_l=psy-ab.3..0i8i13i30k1l2.3987386.3994607.0.3995303.19.19.0.0.0.0.198.2090.0j17.17.0....0...1c.1.64.psy-ab..2.17.2085...0j0i67k1j0i131i67k1j0i131k1j0i10k1j0i10i30k1j0i13k1j0i13i10k1j0i13i30k1.0.scFrKmw3sHU (Errno::ENOENT)
from google.rb:11:in `open'
from google.rb:11:in `<main>'

Vladimir
17.01.2018
08:39:34

Natalia
17.01.2018
08:40:25
служба запущена?

Vladimir
17.01.2018
08:41:06

Natalia
17.01.2018
08:41:32
Ну и посмотри логи, может там ошибки какие выпадают
я вот буквально на прошлой неделе с этим мучилась

Denis
17.01.2018
08:42:18
ладно другой вопрос из гугла получил ответ на русском только кодировка как из жопы как бы ее поправить?

Natalia
17.01.2018
08:43:11

Vladimir
17.01.2018
09:15:30

Andrey
17.01.2018
09:41:21

Илья
17.01.2018
10:41:31

Dima
17.01.2018
11:01:48
у тебя консоль расцвела

artem3321
17.01.2018
11:52:01
Вырвиглазное оформление, разве нет ?)

Aleksej
17.01.2018
12:14:27
Не подскажешь, где скачать темы для winamp?

Vladimir
17.01.2018
12:15:20

Google

Aleksej
17.01.2018
12:15:38
:-(

Vladimir
17.01.2018
12:16:02
винамп - это точно флудо-тема. стоп

Admin
ERROR: S client not available

Alexandr
17.01.2018
14:09:34
Добрый день. Подскажите пожалуйста решение, пишу бота для ТГ, нужно сохранять ответы от пользователей, пробовал 'sdbm', но не смог понять, как очистить базу в конце, в итоге выдаёт ошибку при повторном старте, типо "sdbm file is closed".
Есть ли что-то проще? Мне нужно просто собрать ответы, и отправить другому пользователю.

Dima
17.01.2018
14:18:34
ответы нужно сохранить и повторно комуто отправить или это разовый процесс, собрал - отправил - отобразил?

Alexandr
17.01.2018
14:19:04
В том то и дело, что сохранить, а у меня для каждого ответа свой "when"

Dima
17.01.2018
14:25:11
исходя из твоей ошибки что sdbm is closed понятно что база не подключена на момент когда ты пытаешся с нее что-то прочитать. Может если ты закинул бы код на pastebin или что то в этом роде, то можно было бы там найти ошибку.
да и муторнй какой-то этот класс, может простая база sqlite упростила бы задачу

Alexandr
17.01.2018
14:28:39
Документация по нему - ужас
Наверное лучше действительно sqlite попробовать
Спасибо)
Если у кого есть время и желание покопаться в говно-коде, и написать что там не так: https://pastebin.com/ppL282j8
Буду весьма благодарен

Илья
17.01.2018
14:48:04
Есть просьба к веб-разработчикам фронтендов/фуллстак/итд. Если вы используете хромиумный DevTools (в любой его ипостаси, от ГуглХрома до Оперы) и хотите что-то в нём поменять, или, например, чтобы какой-то важный для вас функционал был постоянно протестирован - дайте знать.

Natalia
17.01.2018
15:27:11
шта?

Alex
17.01.2018
15:29:13
@brammator , а в чем подвох?

Александр
17.01.2018
15:29:34
Наверное разработчик девтулза

Илья
17.01.2018
15:29:37
Нет подвоха. Я в тестировании яндекс.браузера работаю.
соответственно, какие-то фиксы имеют шанс попасть апстримом в хромиум, а оттуда уже в остальные хром-бейзед.

Alex
17.01.2018
15:31:39
?

Vladimir
17.01.2018
15:31:45
поменьше бы оперативы кушали браузеры было бы хорошо ) [речь не идёт о 20+ открытых вкладках, даже 3 Таба будут всё равно прожорливыми...]

Google

Natalia
17.01.2018
15:32:05
Ооо, это да

Александр
17.01.2018
15:32:35
Мы сами такие сайты пишем которые много ждут
Жрут
Это вина не браузеров а сайтов ?

Vladimir
17.01.2018
15:34:50

Eduards
17.01.2018
15:47:38
Народ кто что скажет про курсы goodprogrammer.ru ?

Andrew
17.01.2018
15:49:45

Eduards
17.01.2018
15:51:58

Andrew
17.01.2018
15:52:40
Выбираю варианты

Vladimir
17.01.2018
15:57:58

Евгений
17.01.2018
15:58:41