Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions app/assets/javascripts/activeadmin_addons/all.js
Original file line number Diff line number Diff line change
Expand Up @@ -230,6 +230,7 @@
var responseRoot = element.data("response-root");
var minimumInputLength = element.data("minimum-input-length");
var order = element.data("order");
var primaryKey = element.data("primary-key");
var selectOptions = {
width: width,
minimumInputLength: minimumInputLength,
Expand Down Expand Up @@ -270,7 +271,7 @@
resource[displayName] = "No display name for id #" + resource.id.toString();
}
return {
id: resource.id,
id: resource[primaryKey],
text: resource[displayName].toString()
};
})
Expand Down Expand Up @@ -352,6 +353,7 @@
var minimumInputLength = element.data("minimum-input-length");
var order = element.data("order");
var parentId = element.data("parent-id");
var primaryKey = element.data("primary-key");
var selectInstance;
var select2Config = {
width: width,
Expand Down Expand Up @@ -401,7 +403,7 @@
resource[displayName] = "No display name for id #" + resource.id.toString();
}
return {
id: resource.id,
id: resource[primaryKey],
text: resource[displayName].toString()
};
})
Expand Down Expand Up @@ -520,6 +522,7 @@
var responseRoot = element.data("response-root");
var minimumInputLength = element.data("minimum-input-length");
var order = element.data("order");
var primaryKey = element.data("primary-key");
var selectOptions = {
minimumInputLength: minimumInputLength,
allowClear: true,
Expand Down Expand Up @@ -551,7 +554,7 @@
return {
results: jQuery.map(data, function(resource) {
return {
id: resource.id,
id: resource[primaryKey],
text: resource[displayName].toString()
};
})
Expand Down
1 change: 1 addition & 0 deletions app/inputs/nested_level_input.rb
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ def load_control_attributes
load_data_attr(:url, default: url_from_method)
load_data_attr(:response_root, default: tableize_method)
load_data_attr(:width, default: "80%")
load_data_attr(:primary_key, default: "id")
load_data_attr(:order,
value: @options[:order_by],
default: get_data_attr_value(:fields).first.to_s + "_desc")
Expand Down
1 change: 1 addition & 0 deletions app/inputs/search_select_input.rb
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ def load_control_attributes
load_data_attr(:display_name, default: "name")
load_data_attr(:minimum_input_length, default: 1)
load_data_attr(:width, default: "80%")
load_data_attr(:primary_key, default: "id")
load_data_attr(
:order,
value: @options[:order_by],
Expand Down
1 change: 1 addition & 0 deletions app/inputs/selected_list_input.rb
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ def load_control_attributes
load_data_attr(:display_name, default: "name")
load_data_attr(:minimum_input_length, default: 1)
load_data_attr(:width, default: "100%")
load_data_attr(:primary_key, default: "id")
load_data_attr(
:order,
value: @options[:order_by],
Expand Down
3 changes: 2 additions & 1 deletion app/javascript/activeadmin_addons/inputs/nested-select.js
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ var initializer = function() {
var minimumInputLength = element.data('minimum-input-length');
var order = element.data('order');
var parentId = element.data('parent-id');
var primaryKey = element.data('primary-key');
var selectInstance;

var select2Config = {
Expand Down Expand Up @@ -133,7 +134,7 @@ var initializer = function() {
resource[displayName] = 'No display name for id #' + resource.id.toString();
}
return {
id: resource.id,
id: resource[primaryKey],
text: resource[displayName].toString(),
};
}),
Expand Down
3 changes: 2 additions & 1 deletion app/javascript/activeadmin_addons/inputs/search-select.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ var initializer = function() {
var responseRoot = element.data('response-root');
var minimumInputLength = element.data('minimum-input-length');
var order = element.data('order');
var primaryKey = element.data('primary-key');

var selectOptions = {
width: width,
Expand Down Expand Up @@ -58,7 +59,7 @@ var initializer = function() {
resource[displayName] = 'No display name for id #' + resource.id.toString();
}
return {
id: resource.id,
id: resource[primaryKey],
text: resource[displayName].toString(),
};
}),
Expand Down
3 changes: 2 additions & 1 deletion app/javascript/activeadmin_addons/inputs/selected-list.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ var initializer = function() {
var responseRoot = element.data('response-root');
var minimumInputLength = element.data('minimum-input-length');
var order = element.data('order');
var primaryKey = element.data('primary-key');

var selectOptions = {
minimumInputLength: minimumInputLength,
Expand Down Expand Up @@ -58,7 +59,7 @@ var initializer = function() {
return {
results: jQuery.map(data, function(resource) {
return {
id: resource.id,
id: resource[primaryKey],
text: resource[displayName].toString(),
};
}),
Expand Down
1 change: 1 addition & 0 deletions docs/select2_search.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,4 @@ In case you need to filter with an attribute of another table you need to includ
* `order_by`: **(optional)** Order (sort) results by a specific attribute, suffixed with `_desc` or `_asc`. Eg: `description_desc`. By **default** is used the first field in descending direction.
* `predicate`: **(optional)** You can change the default [ransack predicate](https://github.com/activerecord-hackery/ransack#search-matchers). It **defaults to** `cont`.
* `method_model`: **(optional)** Use in case you need to search or filter an attribute of another table.
* `primary_key`: **(optional)** Use in case you need to search with another column. It **defaults to** `"id"`.
1 change: 1 addition & 0 deletions docs/select2_selected_list.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,3 +38,4 @@ To get...
* `width`: **(optional)** You can set the select input width (px or %).
* `order_by`: **(optional)** Order (sort) results by a specific attribute, suffixed with `_desc` or `_asc`. Eg: `description_desc`. By **default** is used the first field in descending direction.
* `predicate`: **(optional)** You can change the default [ransack predicate](https://github.com/activerecord-hackery/ransack#search-matchers). It **defaults to** `cont`
* `primary_key`: **(optional)** You can change the default primary key. It **defaults to** `"id"`