2013-04-01 2 views
0

Я делаю вызов API с использованием базовой модели, которая возвращает JSON со списком сообщений.Rails + Показать динамический контент с backbone.js

Каждый пост является динамичным, как это может быть
1. понравился или
нежелательных 2. прокомментировал или не прокомментировал
3. Совместный Общественный или частных или a группа

Теперь в моей основе templa te при отображении сообщений, я делаю , если еще условий для отображения динамического содержимого.

<% if(jsonresponse["like"] == true){ *> 
    <a href="/posts/1/like">Like</a> 
<%} else %> 
    <a href="/posts/1/like">Unlike</a> 
<% } %> 

<% if(jsonresponse.target == 'public'){ *> 
    <a href="#">Public</a> 
<%} else if(jsonresponse.target == 'private'){%> 
    <a href="#">Private</a> 
<% } else if(jsonresponse.target == 'groups'){%> 
    <a href="#"><%= post.target.shared[0].displayName %></a> 
<% } %> 

Это как мы должны отображать динамический контент?
Проверка условий в шаблоне - правильный способ сделать это?

ответ

1

Я знаю, что это выглядит немного уродливо, но в этом нет ничего плохого. Возможно, вы могли бы разделить ваш взгляд на два (например, в отличие от ... public/private/groups), так что, когда пользователь нажимает на него, в отличие от вас, вы только визуализируете вышеуказанное представление.

В рулонах, которые я использую, мы склонны писать вспомогательные функции, которые абстрагируют их if/else и делают вид чистым. Это один из вариантов, но это немного перебор, если у вас есть только одна ситуация.

+0

Мне просто интересно, был ли лучший способ. Теперь я могу написать счастливо .. Спасибо :) –

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