Атрибуты по умолчанию attribute_select и Предикат_селект с использованием Ransack
Я использую гем Ransack в Rails и хотел бы показать атрибут выбора по умолчанию (например, "имя", предварительно выбранный в выпадающем списке), а также предикат по умолчанию (например, "содержит"). Идея состоит в том, чтобы позволить пользователю быстро запрашивать модель пользователя, вводя имя пользователя без необходимости каждый раз выбирать "имя" и "содержит".
Приведенный ниже фрагмент кода является довольно стандартным и показывает мою настройку просмотра.
<%= f.attribute_fields do |a| %>
<%= a.attribute_select %>
<% end %>
<%= f.predicate_select compounds: false%>
<%= f.value_fields do |v| %>
<%= v.text_field :value, :class => "page_filter_value_field" %>
<% end %>
Любая помощь приветствуется...
1 ответ
Просто пересмотрел это. Не могу найти что-то на стороне Ransack, может быть, я что-то пропустил. Быстрое неприятное решение состоит в том, чтобы изменить выбор, используя jquery:
$(function(){
$("#q_c_0_a_0_name option[value=unit_title]").attr("selected","selected") ;
$("#q_c_0_p option[value=cont]").attr("selected","selected") ;
});
q_c_0_a_0_name
является идентификатором раскрывающегося списка attribute_select, где я устанавливаю значение в качестве значения параметра и q_c_0_p
является раскрывающимся списком
Это только устанавливает значения по умолчанию для первого экземпляра фильтра, поэтому, когда вы добавляете больше полей фильтра, они остаются пустыми