@rubylang

Страница 206 из 1684
Mikhail
15.07.2016
11:15:31
зато быстро

yopp
15.07.2016
11:15:41
давно уже ? придумали

Andrey
15.07.2016
11:19:00
это enum Form.invoice_states[:paid] хотя согласен, небезопасно

Nikolay
15.07.2016
11:31:29
есть жеж классика ["?", :paid] или [id: "#{:paid}"]

Google
Nikolay
15.07.2016
11:31:35
как кстати лучше экранировать?

Vitaly
15.07.2016
11:32:17
gsub("SELECT","") шучу

?

Nikolay
15.07.2016
11:32:33
во, чтоли пропиариться и запилить патч в рельсе на дефолтные скаффолдеры чтобы он сразу экранированный код генери

))

mardybm
15.07.2016
11:33:09
если думаешь что примут, то запиливай

Nikolay
15.07.2016
11:33:31
бо меня например каждый раз эти скаффолды фиксить чот достало )

в результате у меня сейчас свой скаффолдинг типа скопировать контролер/вьюшки с одной из самых вылизанных моделей, подменить имя модели

Vitaly
15.07.2016
11:36:49
@TurnaviotovNikolay всмысле? из своих моделей или чужих?

Nikolay
15.07.2016
11:37:28
из своих ессно

чтобы все общее повторялось - стили, вьюшки, етц

Vitaly
15.07.2016
11:37:51
а то я подумал, что где-то есть как бы шаблонные модели

Антон
15.07.2016
11:55:16
что у нас the best для лоального GeoIP?

Google
ojab
15.07.2016
11:55:33
maxmind очевидно

ну и гем maxminddb

Антон
15.07.2016
12:33:58
спасибо

Silent Bob
15.07.2016
12:52:35
еще вопрос. В рельсах в экшенах контроллеров все переменные делать инстансными, или только те, которые будут непосредственно использоваться во въюхах? (ну я больше про синатру сейчас спрашиваю в целом)

Vitaliy
15.07.2016
13:06:24
в рельсах я бы советовал вообще не делать инстансных переменных

а передавать во вьюху явно через render locals: { resource: resource }

Например в new можно сделать так: render locals: { resource: Resource.new }

Vitaly
15.07.2016
13:08:03
интересно где последнее применяется? в каких ситуациях?

или это для примера?

Vitaliy
15.07.2016
13:08:37
это мной применяется в продакшне

Vitaly
15.07.2016
13:09:15
посмотреть бы на этот вью и контроллер

для опыта

Vitaliy
15.07.2016
13:10:50
посмотреть бы на этот вью и контроллер
https://gist.github.com/gambala/f0cd567d6665b67837fd793a180838a6

Vitaly
15.07.2016
13:11:09
@gambala спасибки

Vitaliy
15.07.2016
13:11:46
А вообще - подписывайтесь: https://github.com/gambala/gambala - это будет личный сайт-визитка-блог, и он будет open source всегда

ojab
15.07.2016
13:12:23
хмм..
хммчую

Vitaliy
15.07.2016
13:12:28
он еще свежий, не добавлял модели/аутентификацию/админку, но добавлю в течение месяца

Vitaly
15.07.2016
13:12:32
как сложо смотрится class Web::Account::AdsController < Web::Account::ApplicationController навороты какие-то

Vitaliy
15.07.2016
13:12:44
наоборот, отличная методика

Google
Vitaliy
15.07.2016
13:12:56
https://habrahabr.ru/post/136461/

module module moduleтак?

Vitaly
15.07.2016
13:13:58
спасибо за хабр, классная статья

ojab
15.07.2016
13:16:50
https://habrahabr.ru/post/136461/
чем это лучше выноса подобного в helper'ы?

Vitaliy
15.07.2016
13:17:23
что именно предлагается выносить в хелперы?

ojab
15.07.2016
13:19:02
фильтры и прочую фигню, которая в статье хрвнится в ApplicationController'ах неймспейсов

Vitaliy
15.07.2016
13:19:49
Люблю скаффолдить новые контроллеры копированием кода из старых и быстрой заменой названий ресурсов. В случае с module module у разных контроллеров будет разный уровень indentation, что немножко бесит. Поэтому конкретно в контроллерах я использую однострочную нотацию

фильтры и прочую фигню, которая в статье хрвнится в ApplicationController'ах неймспейсов
не представляю, как можно это структурированно сложить в хелперы, соблюдая неймспейсинг роутов - который при такой иерархии контроллеров соблюдается из коробки

ojab
15.07.2016
13:22:02
Vitaliy
15.07.2016
13:25:14
route будет users/123/posts это следующая иерархия контроллеров: - ApplicationController - Web::ApplicationController (конкретизируем веб, а не, например, апи) - Web::Users::ApplicationController (вот здесь в protected объявляем def user, достающий юзера по params[:user_id] и мемоизирующий его) - Web::Users::PostsController (здесь уже наши посты, отбираются как user.posts - user определен как protected метод в контроллере-классе-предке)

ojab
15.07.2016
13:26:37
так это

это все посты юзера

ojab
15.07.2016
13:26:49
блоги у нас в соседнем неймспейсе

Vitaliy
15.07.2016
13:27:14
согласен, проглядел условие

можно так users/123/posts?category=foobar и в Web::Users::PostsController отбирать посты через query в зависимости от указанных параметров поиска (так как я считаю, это должно являться именно поиском статей, а не отбором в иерархичных роутах)

либо так categories/foobar/posts?user=123

Реализация не меняется, тут исходить уже из бизнес-логики, на что акцентировать внимание - на посты категории, с возможностью уточнить юзера-автора, или на посты юзера, с возможностью уточнить категорию

Антон
15.07.2016
13:34:46
пишите быстрее чем я спеваю прочитать

сериалы бы так снимали :(

Vitaliy
15.07.2016
13:37:15
? я в целом люблю пописать, когда интересуются. Блог только вот не заведу никак, но к концу месяца таки сделаю

Google
ojab
15.07.2016
13:37:26
ааааа

Антон
15.07.2016
13:37:43
блог на рельсе это не просто

ojab
15.07.2016
13:38:33
в контроллере здорового человека user_id & blog_id передаётся через params в PostsController и навешиваются нужные scope'ы на Post

тут какой-то оверинжиниринг ради оверинжиниринга

Vitaliy
15.07.2016
13:40:24
в моем случае блог - это на любом фреймворке непросто :) слишком большие требования к UI/UX, интернационализации и удобству в админке

Admin
ERROR: S client not available

Vitaliy
15.07.2016
13:41:49
или как там говорят - не больным, а курильщиком

Антон
15.07.2016
13:42:20
я на старости лет стал писать на столько просто, что мне сейчас даже нечего показать работадателю

ojab
15.07.2016
13:42:56
ну вот >Затем у нас появляется задача выводить все посты одним списком. Мы используем тот же контроллер posts и добавляем туда метод index_all.

я никогда не добавлял ничего подобного

Nikolay
15.07.2016
13:43:07
А вообще - подписывайтесь: https://github.com/gambala/gambala - это будет личный сайт-визитка-блог, и он будет open source всегда
я взял дефолтный бложиковый гайд и его облагородил до почти вордпресса - на этапе статических страниц чот залип

ojab
15.07.2016
13:43:19
просто @posts = Post.all без скоупов

Vitaliy
15.07.2016
13:44:24
ну так конечно, пойдет, без вопросов ?

ojab
15.07.2016
13:44:49
>При этом вывод постов может быть не только по пользователю, но и по категории и по многим другим связям в которых посты будут вложенными ресурсами. это делается через params без всяких вложенных ресурсов

Антон
15.07.2016
13:45:38
а что там читать в gambala-бложике? зачем подписываться?

Nikolay
15.07.2016
13:45:59
ну так конечно, пойдет, без вопросов ?
отут живет. https://github.com/foxmuldercp/blogapp/ надо будет демку поднять, но у меня пока с докерфайлом для рельсиков не складывается

Vitaly
15.07.2016
13:46:08
типа готовый блог

Google
Vitaliy
15.07.2016
13:46:10
Подписываться на репозиторий, чтобы быть в курсе толково спроектированных вещей.

Nikolay
15.07.2016
13:47:01
подними на хероке
я свою панель хостинга пилю же, ;) зачем мне херока

ojab
15.07.2016
13:47:17
>@comment.User = current_user

wut

Nikolay
15.07.2016
13:48:19
первый проект, мне за него местами страшно, да :)

Антон
15.07.2016
13:48:22
а написано что coverage 100%

mutant -r ./config/environment.rb CommentsController

и coverage будет 30%

Nikolay
15.07.2016
13:49:36
ojab
15.07.2016
13:49:40
>.ruby_version >2.2.4

старовато

>belongs_to :User,

Danila
15.07.2016
13:50:38
ой да ладно

ojab
15.07.2016
13:50:39
ну не пишется оно с большой буквы

Vitaly
15.07.2016
13:50:41
@TurnaviotovNikolay а я will_paginate перестал юзать - он же не обновляется и бутстрап только старый поддерживает

Danila
15.07.2016
13:50:43
там можно долго перечислять

Nikolay
15.07.2016
13:50:43
уку, я там капсил страшно

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