powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Ruby on Rails - элементы массива не совпадают
7 сообщений из 7, страница 1 из 1
Ruby on Rails - элементы массива не совпадают
    #37457603
BPK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Формирую JavaScript при помощи Ruby on Rails, в View:

Так работает:
Код: plaintext
1.
2.
3.
4.
5.
6.
  var boldDays = [
<% if (@bold_dates) %>
  <% @bold_dates.where("record_date is not null").each do |d| %>
    <%= d.record_date.strftime("[%d,%m,%Y]") %><%= (d.record_date==@bold_dates.last.record_date) ? "" : "," %>
  <% end %>
<% end %>
  ];

Но хотелось бы сравнивать не поля объектов, а сами объекты:
Код: plaintext
1.
2.
3.
4.
5.
6.
  var boldDays = [
<% if (@bold_dates) %>
  <% @bold_dates.where("record_date is not null").each do |d| %>
    <%= d.record_date.strftime("[%d,%m,%Y]") %><%= (d==@bold_dates.last) ? "" : "," %>
  <% end %>
<% end %>
  ];
но так почему-то не срабатывает.

Выходит, .last из массива не равен самому себе, полученному через .each
...
Рейтинг: 0 / 0
Ruby on Rails - элементы массива не совпадают
    #37458158
Фотография XM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BPK,

как бы более идиоматичная запись:
Код: plaintext
1.
var boldDates = <%= @bold_dates.where("record_date is not null").map{|d| d.record_date.strftime("[%d,%m,%Y]")  }.to_json %>;

ну а ошибка у тебя была в том, что @bold_dates.last редко когда равен @bold_dates.where("record_date is not null").last
...
Рейтинг: 0 / 0
Ruby on Rails - элементы массива не совпадают
    #37459198
BPK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XMну а ошибка у тебя была в том, что @bold_dates.last редко когда равен @bold_dates.where("record_date is not null").last
Ну всё, блин! Пошёл биться головой об дерево.
...
Рейтинг: 0 / 0
Ruby on Rails - элементы массива не совпадают
    #37459208
BPK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XMкак бы более идиоматичная запись
Хотелось, чтобы HTML был как можно компактнее.
...
Рейтинг: 0 / 0
Ruby on Rails - элементы массива не совпадают
    #37459222
BPK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XMкак бы более идиоматичная запись:

Мой вариант:
Код: plaintext
1.
2.
3.
4.
5.
  var boldDays = [
    [ 16 , 09 , 2011 ],
    [ 14 , 09 , 2011 ],
    [ 12 , 09 , 2011 ],
    [ 13 , 09 , 2011 ]
  ]

Твой вариант:
Код: plaintext
var boldDates = ["[16,09,2011]","[14,09,2011]","[12,09,2011]","[13,09,2011]"]
...
Рейтинг: 0 / 0
Ruby on Rails - элементы массива не совпадают
    #37459228
BPK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Плохой движок форума. Ещё попытка написать твой вариант:
Код: plaintext
var boldDates = [&quot;[ 16 , 09 , 2011 ]&quot;,&quot;[ 14 , 09 , 2011 ]&quot;,&quot;[ 12 , 09 , 2011 ]&quot;,&quot;[ 13 , 09 , 2011 ]&quot;]
[/quot]
вот именно так - с квотами.
...
Рейтинг: 0 / 0
Ruby on Rails - элементы массива не совпадают
    #37459528
BPK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пока получилось вот так:
Код: plaintext
var boldDates = <%= @bold_dates.where("record_date is not null").map{|d| d.record_date.strftime("[%d,%m,%Y]")  }.to_json.tr('"', "") %>;
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Ruby on Rails - элементы массива не совпадают
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]