
Ro
26.09.2018
16:09:47
наверняка в какой-то фигне ошибка

Kim
26.09.2018
16:11:51
как там тот сайт из курса назывался?

Eugene
26.09.2018
16:12:20

Google

Kim
26.09.2018
16:12:58
Там через simple_form
какая то дичь, никогда не было проблем
я уже думаю через js сделать. сил нет
через js работает
if (plan != null) {
$('option[value="'+plan+'"]').attr('selected','selected')
}
дендрофекальные технологии

Marina
26.09.2018
16:37:41

Kim
26.09.2018
16:37:58
и

Marina
26.09.2018
16:38:09
когда в форме что-то неправильно, идет post запрос скорее всего уже без этого парамса
можно или руками пробросить этот парамс в пост урл, ну или через жс, да

Kim
26.09.2018
16:38:36
этот парамс уходит нормально в первый раз
но при возврате стр с ошибкой уже всё

Google

Kim
26.09.2018
16:39:02
я то через js сделал и считаю это костылем
просто чекбоксы то работают
не понимаю в чем разница

Marina
26.09.2018
16:39:22
да, потому что первый раз у тебя гет запрос с этим парамсом
а когда неправильно, у тебя рельсы рендерят страницу, без парамса
ну покажи самое начало формы с action

Kim
26.09.2018
16:40:03
ок, а откуда тогда берутся остальные значения?)
чекбоксы возвращаются

Marina
26.09.2018
16:40:17
из объекта

Kim
26.09.2018
16:40:19
все возвращается кроме selected

Marina
26.09.2018
16:40:39
можно просто вместо модели опенструкт подсовывать и так же будут значения рендерится
но парамсы это парамсы
можно будет пробросить этот парамс, если в урл формы написать что-то вроде plans_path(plan: params[:plan])
или в selected: указывать не парамс, а свойство объекта

Kim
26.09.2018
16:44:33
я решил через дата атрибуты
и так сишком много времени убил
вопрос почему так сложно такую простую вещь сделать)

Ro
26.09.2018
17:27:07
^ ты делаешь что-то не так, упустил деталь какую-то
обычно все должно быть просто. Ты последовал моему совету скопировать откуда-нибудь кусок кода?
зайди на гитхаб (залогинься) и введи в поиске`select option form language:erb` (или других кеев добавь)

Google

Ro
26.09.2018
17:28:33
посмотри как остальные делают
(там надо будет переключить на вкладку code)
ну и теперь ты понимаешь за что программерам деньги платят?) вроде бы все просто, но есть иногда затыки. Искусственный интеллект работу не отберет, руби не умрет, порог входа есть - это тоже хорошо
у кого задницы хватит перетерпеть - тот и будет получать бабки) другими словами, иногда нужна железная задница

GG
26.09.2018
17:47:50
Делаю домашку 28урока. Как правильно редиректить и передавать параметр?
Попробовал return erb ...,:locals — не получилось. Инфы в инете нет или неправильный запрос делаю
Если страница статична, то вопроса нет, return erb ... и все гладко

Ro
26.09.2018
17:50:12
не помню точно, может redirect_to
"redirect to" как-то не очень естественно смотрится на мой взгляд)
попробуй накатить rubymine
возможно эти вещи он сможет подсказать

GG
26.09.2018
17:54:19
Валидация в кружке. Redirect_to выводит ошибку

Viktorija
26.09.2018
17:56:30

GG
26.09.2018
17:56:36
Разница в методах redirect vs redirect to не позволяет реализовать

Vitaliy
26.09.2018
17:58:14
наверное ошибка в синтаксисе, если это rails то корректный метод redirect_to

GG
26.09.2018
17:58:26
Это синатра
Возможно в рейлс это делается проще, но задание именно по синатре

Google

Viktorija
26.09.2018
17:59:51

Vitaliy
26.09.2018
18:00:00

Viktorija
26.09.2018
18:01:44
пробовала и редиректы и ретерны

Vitaliy
26.09.2018
18:01:46
Так же вижу что нет скобок
http://sinatrarb.com/intro

GG
26.09.2018
18:01:56

Fedor
26.09.2018
18:08:52

Admin
ERROR: S client not available

Viktorija
26.09.2018
18:08:54
тут видимо дело не в скобках, после валидации должна возвращаться страница /details/:post_id + сообщение об ошибке... а это не получается сделать из-за :post_id... если б не оно, то было бы просто эррор + erb :details и все, а с :post_id так просто сделать нельзя... редирект вообще не очень подходит для этой задачи, имхо, тут нужен ретерн, а он ругается на пост айди

Fedor
26.09.2018
18:10:23
redirect to - это алиас для redirect_to, который принимает часть юрла и редиректит на юрл в рамках приложения
redirect to внутри себя вызывает redirect
а внутри redirect вызывается halt в который прокидываются параметры те же параметры что передаются в redirect после urla
https://github.com/sinatra/sinatra/blob/9590706ec6691520970c67b929776fd97d3c9ddd/lib/sinatra/base.rb
если посмотреть исходники синатры, то чаще чего передается просто код http ответа, но иногда еще и тело вторым аргументом (как в методе error)
попробуйте сделать redirect '/some/url', 500, 'Some error'

GG
26.09.2018
18:14:05

Fedor
26.09.2018
18:14:07
если я правильно понял, что вы хотите
ничего не понял

Google

Fedor
26.09.2018
18:14:47
redirect прерывает выполнения запроса и возвращает ответ клиенту
туда бесполезно прокидывать переменные, потому что после этого программа ничего не делает, а завершает свою работу

Vitaliy
26.09.2018
18:15:24

GG
26.09.2018
18:16:05

Viktorija
26.09.2018
18:16:41

Fedor
26.09.2018
18:17:20
обычно для этого надо вернуть json в котором будет лежать {form: { errors: {field1: 'error1'}}}
^^^ это для ошибок валидации в форме

GG
26.09.2018
18:17:48
Я попробовал и return :sample, :locals => {}
Не помогло. Возможно, не правильно использовал

Fedor
26.09.2018
18:19:07
ох...
смотрите, вам приходит форма в параметрах

GG
26.09.2018
18:19:40

Fedor
26.09.2018
18:20:14
вам нужно взять все эти параметры, добавить к ним список ошибок, и прокинуть в контроллер, который рисует форму (new или update)
и отрендерить форму с этими пармаетрами и ошибками
или просто отрендерить без редиректа

GG
26.09.2018
18:20:56
Вот

Fedor
26.09.2018
18:21:01
и код передать 422 вторым аргументом

GG
26.09.2018
18:21:03
Как это делается:)

Vitaliy
26.09.2018
18:21:58
Мне кажется или рельсы по сравнению с сенатрой более легкие в освоении ? ?

GG
26.09.2018
18:21:59
Как это делается:)
Сам принцип для меня понятен, но синтаксис для выполнения нет. Точнее, я его вообще не знаю. При этом не могу найти в доках это