2012-06-02 2 views
0

У меня есть требование, в котором я храню дату в базе данных. Но я хочу, чтобы пользователь мог изменить день на выбранную дату.Выбор дня в Ruby

Как они могут выбрать только понедельник, вторник и т. Д. И на основании этого я хочу настроить дату в базе данных.

Для удовлетворения требования, я пытаюсь следующий код и он бросает ошибку

<%= f.datetime_select :published_at.to_time.strftime("%a") %> 

Далее следует сообщение об ошибке:

NoMethodError in Articles#new 

Showing C:/Users/huzaifa.gain/My Documents/Aptana Studio 3 Workspace/blog/app/views/articles/_form.html.erb where line #32 raised: 
undefined method `to_time' for :published_at:Symbol 

Extracted source (around line #32): 
29: </div> 
30: <div class="field"> 
31:  <%= f.label :published_at %><br /> 
32:  <%= f.datetime_select :published_at.to_time.strftime("%a") %> 
33:  <%= f.select :published_at, Date::DAYNAMES.zip((0..6).to_a) %> 
34: 
35: 
+0

Каков формат вашего столбца 'published_at'? и что у вас есть на постоянной? –

+0

опубликовано_ является полем datetime – Gainster

ответ

0

Try:

<%= f.datetime_select :published_at.to_strftime("%a") %> 
+0

Я вижу ошибку: неопределенный метод 'to_strftime 'для: published_at: Символ – Gainster

0

datetime_select и другие помощники формы - это методы на объектах формообразователя. Вам нужно подумать о том, какие варианты использует этот помощник. Кажется, он не поддерживает strftime. Обратитесь к the api reference за вариантами.

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