Ajax направляющих: Мои частичные потребности экземпляр FormBuilder

Насколько мне известно, оператор «for» всегда будет потреблять время.

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

Я думаю, что, поиск подстроки в строке с оператором 'is' немного быстрее.

In [1]: t = ["abc_%s" % number for number in range(10000)]

In [2]: %timeit any("9999" in string for string in t)
1000 loops, best of 3: 420 µs per loop

In [3]: %timeit "9999" in ",".join(t)
10000 loops, best of 3: 103 µs per loop

Но я согласен с тем, что инструкция any более читаема.

15
задан Gareth 16 December 2008 в 12:24
поделиться

2 ответа

Используйте fields_for внутренняя часть Ваше частичное. Это выполняет подобную задачу, но не перенося теги form. Посмотрите документы .

API
14
ответ дан 1 December 2019 в 03:52
поделиться

Вы могли инстанцировать нового экземпляра своего конструктора форм в контроллере, хотя это чувствует вид паршивых мне:

# in the controller
render :partial => {
  :f => MyFormBuilder.new(:staff_member, @staff_member, template),
  :skill_groups => @skill_groups,
  :staff_member => @staff_member
}

, С другой стороны, Вы могли переместить больше логики обновления, чтобы быть стороной клиента, которая не потребует, чтобы Вы волновались о рендеринге чего-либо вообще. Вы могли просто обновить значения через JS. Не уверенный, если это работает на Ваш проект все же.

1
ответ дан 1 December 2019 в 03:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: