2016-08-11 2 views
1

Я следующий код в рельсах тонкий макет:Рельсы тонкий «если» заявления и вложенные теги

- if content_for(:body_tag) 
    yield :body_tag 
- else 
    body 

The: шаблон BODY_TAG обычно включает что-то вроде body ng-controller='myAngularAppController', например

Проблема заключается в том что любые последующие команды, которые я делаю, не будут вложены в тег body. Если я пишу

- if content_for(:body_tag) 
    yield :body_tag 
- else 
    body 
.container 
... 

body тег закроются перед началом контейнера. Если я пишу

- if content_for(:body_tag) 
    yield :body_tag 
- else 
    body 
    .container 
    ... 

Контейнер обыкновение оказывать на всех, когда :body-tag указано.

Я предполагаю, что это обычная проблема. Есть предположения?

+0

Таким образом, содержимое тела всегда будет таким же, но вам нужно, чтобы тег body был динамическим, исходя из наличия/отсутствия ': body_tag', правильно? – jeffdill2

+0

@ jeffdill2 Да, правильно – PlankTon

+0

Вы когда-нибудь находили решение для своей проблемы? – jeffdill2

ответ

1

Если единственное, что будет динамичными на body является атрибутом ng-controller, я рекомендовал бы разрешаю так:

body ng-controller=content_for(:controller) 

Вместо указания всего тега с :body_tag идентификатором, просто указать body тег статически (потому что - статический) и динамический контроллер, который вы хотите использовать с идентификатором :conroller (или тем, что вы хотите назвать).

Смежные вопросы