@rubylang

Страница 884 из 1684
ojab
07.02.2017
05:43:43
большие логи луче в gist кидать

v
07.02.2017
05:44:27
Привет! Может кто сталкивался с таким поведением на heroku - 404 на раут, который есть в логах 2017-02-07T05:19:44.292292+00:00 heroku[router]: at=info method=GET path="/library" host=some-host.herokuapp.com request_id=4f5fd654-dba2-428f-84d3-4e0be0f51eed fwd="180.183.153.61" dyno=web.1 connect=1ms service=24ms status=404 bytes=6427 2017-02-07T05:19:44.268884+00:00 app[web.1]: Started GET "/library" for 180.183.153.61 at 2017-02-07 05:19:44 +0000 2017-02-07T05:19:44.270096+00:00 app[web.1]: 2017-02-07T05:19:44.270097+00:00 app[web.1]: ActionController::RoutingError (No route matches [GET] "/library"): rake routes: heroku run rake routes | grep lib library GET /library(.:format) library#index routes.rb: cat config/routes.rb | grep lib get 'library' => 'library#index' локально и в проде все нормально: dev: Started GET "/library" for 127.0.0.1 at 2017-02-07 12:05:14 +0700 Processing by LibraryController#index as HTML prod: 2017-02-07T05:29:49.523850+00:00 heroku[router]: at=info method=GET path="/library" host=some-host.com request_id=0028f3e7-4c1a-4fc0-95bb-e0d7a7ecf1d4 fwd="180.183.153.61" dyno=web.1 connect=0ms service=54ms status=200 bytes=15710 2017-02-07T05:29:49.471115+00:00 app[web.1]: Started GET "/library" for 180.183.153.61 at 2017-02-07 05:29:49 +0000 2017-02-07T05:29:49.473126+00:00 app[web.1]: Processing by LibraryController#index as HTML тупит только стейджинг
а прод-то тоже на хероку?

Victor
07.02.2017
05:44:49
ofc

а, разобрался, там вот что constraints subdomain: ['www', ''] do

Google
Victor
07.02.2017
05:52:43
локально и в проде сабдомена нет, на стейдже есть

Michael
07.02.2017
07:20:18
доброе утро, ребята подскажите пожалуйста, есть таблица, у нее есть некоторые поля с значениями, и есть булево поле. у самой модели есть бефо сейв фильтр в котором обнуляются значение если булево поле false возможно ли как-то сделать, что бы при обновлении булевого поля через Model.update_all(foo: false) значения тоже обнулсялись? или в таком случае нужно отказываться от update_all ?

Andrey
07.02.2017
07:22:03
а не вариант все поля обернуть в геттеры, которые будут возвращать нулевые значения if foo?

а то записи постоянно теребонькать как-то не очень

Michael
07.02.2017
07:25:35
а не вариант все поля обернуть в геттеры, которые будут возвращать нулевые значения if foo?
да согласен постоянно дергать записи не очень хорошо, но и if foo? тоже не вариант, уж много расчетов происходит на основе этих значений

да и по сути foo: false это финиш, после него объект уже не будет обновляться

или я Вас не так понял?

Ivan
07.02.2017
07:27:08
а если с update_all все остальные поля тоже обнулять?

Alex
07.02.2017
07:27:29
в какой ситуации тебе вообще нужен Model.update_all(foo: false)?

Michael
07.02.2017
07:27:49
а если с update_all все остальные поля тоже обнулять?
тут вариант, что кто-то забудет включить в парамметры остальные поля

Alex
07.02.2017
07:27:56
Такие вещи вообще стоит юзать в исключительных ситуациях. Они не прогоняют ни валидации ни хуки

Google
Andrey
07.02.2017
07:29:43
допустим, есть поле bar в базе

и ты пишешь def bar if foo nil else bar end

Alex
07.02.2017
07:30:45
я бы сначала разобрался зачем нужен update_all

убивать данные это жесть.

Michael
07.02.2017
07:30:56
и ты пишешь def bar if foo nil else bar end
а как тогда быть с запросами на SQL ?

Alex
07.02.2017
07:31:48
а ты говорил что то про запросы SQL? такого условия ты не высказывал. Зачем тебе update_all?

не лучше ли юзать bulk update?

там и валидации прогоняться будут, хуки - хз.

Michael
07.02.2017
07:33:24
не лучше ли юзать bulk update?
ну допустим у меня есть 40к рейсов, мне их нужно промаркировать available: false

Alex
07.02.2017
07:33:42
впринципе можно через bulk update делать

и разбить на куски.

И все внутри транзакции.

active record import гем смотри.

там для mysql точно есть insert on duplicate key update, для постгреса не смотрел.

Michael
07.02.2017
07:37:12
окей, спасибо.

Alex
07.02.2017
07:39:29
Я надеюсь ты 40к рейсов в фоне обновляешь.

Michael
07.02.2017
07:41:05
ну а как по другому то ))

еще и тесты, на это дело есть)))

?

Google
Антон
07.02.2017
09:13:09
чота такое

но на 40к штуках может сильно напрячь базу

Michael
07.02.2017
09:19:09
ясно, спасибо

Karina
07.02.2017
11:00:31
ребят, привет. я опять со своим деплоем, - вот щас руки добрались и его делаю. установила nginx на сервере, создала пользователя. вот щас на локале мучу с capistrano. Добралась до deploy.rb и вижу вот что: namespace :git do desc 'Deploy' task :deploy do ask(:message, "Commit message?") run_locally do execute "git add -A" execute "git commit -m '#{fetch(:message)}'" execute "git push" end end И ето таск деплоя??? Непонятно! деплой должен делать fetch или pull - что-то скачивать с гита, но никак не пушить!

пользуюсь вот этим мануалом https://habrahabr.ru/post/213269/

я-то хочу на сервере ввести команду deploy и чтоб он скачал с моего репозитория и что надо потом сделал

Vasiliy
07.02.2017
11:03:36
зачем ты вообще это делаешь? там капистрано рельс сам всё делает

таски не нужны

Karina
07.02.2017
11:04:03
мануал говорит так делать

Vasiliy
07.02.2017
11:04:22
а документация что говорит? ?

Karina
07.02.2017
11:05:15
ладно, щас пошуршу лучше документацию тогда

Vasiliy
07.02.2017
11:05:20
вот мой файл деплоя https://github.com/stiig/strnewster/blob/master/config/deploy.rb вот Capfile, всё деплоется ок https://github.com/stiig/strnewster/blob/master/Capfile

Karina
07.02.2017
11:06:11
во, я эти файлы заполнила уже

Vasiliy
07.02.2017
11:06:18
и.. всё)

Karina
07.02.2017
11:06:28
а какую команду надо ввести, чтоб задеплоилось?

Vasiliy
07.02.2017
11:06:45
только советую capistrano-puma с jungle не использовать, а сделать через systemd

cap production deploy

Karina
07.02.2017
11:07:11
ок, спасибо

щас буду пробовать

Vasiliy
07.02.2017
11:07:28
можешь сначала cap production deploy —dry-run чтобы посмотреть что будет

Google
trickster
07.02.2017
11:08:32
гаес

в page.body

<a data-walk-me-through=\"&lt;p&gt;New Content!&lt;/p&gt;\n\">▷ Walk me through</a>

почему сlick_link "▷ Walk me through"

может не прокать в капибаре?

ojab
07.02.2017
11:14:18
потому что кодировка не utf-8?

trickster
07.02.2017
11:17:19
а можно зафорсить как-то?

Admin
ERROR: S client not available

ojab
07.02.2017
11:21:13
https://ruby-doc.org/core-2.4.0/Encoding.html#class-Encoding-label-Script+encoding

Karina
07.02.2017
11:33:41
сделала cap production deploy и ничего ?

ojab
07.02.2017
11:42:19
из byebug'a линк нажимается? На странице он точно есть (селектором по тексту выбирается)?

сделала cap production deploy и ничего ?
что пишет? Или вообще ничего не пишет?

Karina
07.02.2017
11:43:37
ojab
07.02.2017
11:44:18
В config/deploy/production.rb сервер вписала?

Karina
07.02.2017
11:45:26
В config/deploy/production.rb сервер вписала?
точно! я вписала, но там была какая-то синтаксическая ошибка и закоментила. забыла

trickster
07.02.2017
12:04:26
что пишет? Или вообще ничего не пишет?
оказалось, что xpath не распознавал линк

без href

:)

Karina
07.02.2017
12:17:12
пишет мне ошибку cap production deploy - Net::SSH::AuthenticationFailed Authentication failed for user deploy@ip . Но это у меня что-то с ключами server "ip", user: "deploy", roles: %w{web app db}, ssh_options: { user: "deploy", # overrides user setting above keys: %w(~/.ssh/id_rsa), //это ключи на локальной машине или где? forward_agent: false, auth_methods: %w(publickey password), password: "pass" } что еще можно придумать ?

Google
Vasiliy
07.02.2017
12:19:46
ssh_options ни нужно

ojab
07.02.2017
12:19:54
ssh_options удаляй, после этого пробуй ручками залогиниться в ssh deploy@ip

Vasiliy
07.02.2017
12:20:13
ну

ojab
07.02.2017
12:20:22
если не логинится — чини ssh, capistrano тут не при чём

Vasiliy
07.02.2017
12:20:55
у тебя deploy юзер вообще есть на удалённой машине? У него твой ключ в authorized_keys есть?

Karina
07.02.2017
12:22:41
Vasiliy
07.02.2017
12:23:13
да) бывает такое) руту даёшь ключ, а про деплой забываешь

Karina
07.02.2017
12:23:52
да я не забыла, я и не знаю - какие ключи. Щас буду гуглить

Vasiliy
07.02.2017
12:25:13
у тебя есть в .ssh/id_rsa.pub его добавь прям

Скалли
07.02.2017
12:25:32
всем привет а где можно почитать про связи моделей, когда DB сделана не в rails_way? ну т.е. к примеру имеем две таблицы GEO и PLACES. GEO может иметь несколько PLACES, в таблице PLACES есть поле ID_GEO

Karina
07.02.2017
12:26:04
у тебя есть в .ssh/id_rsa.pub его добавь прям
прям скопировать с локали и добавить на сервак?

Andrey
07.02.2017
12:26:44
на rails guides больше

Alex
07.02.2017
12:26:46
там есть всякие foreign_key, и т.д

Vasiliy
07.02.2017
12:27:19
прям да - cat .ssh/id_rsa.pub копирнуть и вставить в /home/deploy/.ssh/authorized_keys на удаленной машине (могу опечататься в authorized)

ojab
07.02.2017
12:29:00
и не забыть сделать дирекотории права 0700, и файлу 0600

Vasiliy
07.02.2017
12:30:58
ну вообще если сервак поиграться то можно и забыть)

ojab
07.02.2017
12:32:40
нельзя, sshd проверяет права

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