2016-12-03 4 views
1

Я использую следующий код в шаблон для отображения даты:Скажите <%= ... %> не добавлять пространство

<% if job.end_month do %> 
    <%= "#{job.end_month}/" %> 
<% end %> 
<%= "#{job.end_year}" %> 

Это приводит к 3/ 2014 и не в 3/2014. Как заставить Phoenix не добавлять пробел после "#{job.end_month}/"?

+1

Я d напишите это как '<% = if job.end_month, do:" # {job.end_month}/"%><% = job.end_year%>'. – Dogbert

ответ

2

Одним из решений было бы создать внешний помощник, который сделал это для вас: , например.

def job_string(%Job{end_month: nil}), do: job.end_year 
def job_string(job), do: "#{job.end_month}/#{job.end_year}" 

Тогда просто использовать, что на ваш взгляд:

<%= job_string(job) %> 

В качестве альтернативы, если вы не хотите, чтобы делать все, что и предпочли бы Messier вид вид:

<% if job.end_month do %> 
    <%= "#{job.end_month}/#{job.end_year}" %> 
<% else %> 
    <%= "#{job.end_year}" %> 
<% end %>