Use
:include
in
:initialize_grid
to include associated tables.
:include
can be a single association name, an array of association names.
If you need to join tables to joined tabes, use hashes, for example:
include: [:priority, :status, {project: :customer}]
To define a column from a joined table, use
:assoc
to specify a the corresponding association.
If you need to join a table to a joined table,
list associations in an array on the correct order
(look at the customer column).
You can drop a block if you don't need any special markup.
# encoding: utf-8 class JoiningTablesController < ApplicationController def index @tasks_grid = initialize_grid(Task, # You can omit includes if they are all mentioned in :assoc in the view # includes: [:priority, :status, {project: :customer}], conditions: { archived: false }, order: 'id' ) end end
.well %h2= current_page_title %p Use %code :include in %code :initialize_grid to include associated tables. %code :include can be a single association name, an array of association names. If you need to join tables to joined tabes, use hashes, for example: %code include: [:priority, :status, {project: :customer}] %p To define a column from a joined table, use %code :assoc to specify a the corresponding association. If you need to join a table to a joined table, list associations in an array on the correct order (look at the customer column). %p You can drop a block if you don't need any special markup. = show_code = render 'grid'
<%= grid(@tasks_grid, show_filters: :always) do |g|
g.column name: 'ID', attribute: 'id', filter: false
g.column name: 'Title', attribute: 'title'
g.column name: 'Priority', attribute: 'name', assoc: :priority
g.column name: 'Status', attribute: 'name', assoc: :status
g.column name: 'Project Name', attribute: 'name', assoc: :project
g.column name: 'Customer', attribute: 'name', assoc: [:project, :customer]
g.column name: 'Assigned To', attribute: 'name', assoc: :assigned_users do |task|
task.assigned_users.collect{|user| user.name}.to_sentence
end
g.column do |task|
link_to('Edit', edit_task_path(task))
end
end -%>
ID | Title | Priority | Status | Project Name | Customer | Assigned To | |
---|---|---|---|---|---|---|---|
1-20 / 449 show all | |||||||
2 | ut sint | Anecdotic | Assigned | Divine Firmware | SkyNet | Koobus Venter and Sarah Livingstone | Edit |
4 | nisi qui | Low | Verified | Divine Firmware | SkyNet | Dirk Michaels, Koobus Venter, and Fundiswa Mhlanga | Edit |
8 | nulla | Urgent | Resolved | Divine Firmware | SkyNet | Koobus Venter | Edit |
12 | explicabo hic | Urgent | Postponed | Divine Firmware | SkyNet | Dirk Michaels and Sarah Livingstone | Edit |
23 | exercitationem aut | Anecdotic | Closed | Divine Firmware | SkyNet | Koobus Venter and Fundiswa Mhlanga | Edit |
28 | laborum enim voluptas | Closed | Divine Firmware | SkyNet | Fundiswa Mhlanga | Edit | |
41 | est | Urgent | Started | Divine Firmware | SkyNet | Fundiswa Mhlanga | Edit |
48 | qui incidunt | Low | Cancelled | Divine Firmware | SkyNet | Sarah Livingstone | Edit |
51 | harum qui possimus | Anecdotic | Cancelled | Divine Firmware | SkyNet | Koobus Venter and Dirk Michaels | Edit |
57 | neque | Normal | Postponed | Divine Firmware | SkyNet | Fundiswa Mhlanga, Koobus Venter, and Dirk Michaels | Edit |
61 | quia architecto | Normal | Assigned | Divine Firmware | SkyNet | Grey Bradnam | Edit |
62 | eum velit saepe | Normal | Assigned | Divine Firmware | SkyNet | Koobus Venter | Edit |
68 | exercitationem delectus | Normal | Postponed | Divine Firmware | SkyNet | Fundiswa Mhlanga, Koobus Venter, and Sarah Livingstone | Edit |
69 | similique placeat ipsa | Anecdotic | Duplicate | Divine Firmware | SkyNet | Grey Bradnam, Koobus Venter, and Dirk Michaels | Edit |
15 | est ut aut | New | Divine Firmware | SkyNet | Edit | ||
5 | dicta pariatur | High | Postponed | Divine Firmware | SkyNet | Edit | |
58 | atque et | Anecdotic | Started | Divine Firmware | SkyNet | Edit | |
1 | impedit aperiam libero | Cancelled | Divine Firmware | SkyNet | Edit | ||
45 | rerum | Normal | Postponed | Divine Firmware | SkyNet | Edit | |
3 | aliquam repudiandae | Anecdotic | Assigned | Divine Firmware | SkyNet | Edit |