ActiveAdmin - show attributes from association model
I have Registration model that has_many players {Player}. Registration has registerer's first name field and last name field, and a Player has such fields as name, date_of_birth, club. From users's perspective it is possible to add up to 3 players on the registration form so a Registration will always have up to 3 players.
Now, in Active Admin on Registration Index view I would like to show those 3 players' attributes, somehow like this.
Registration
First_name | Last name | Players |
Name : ...
Date of birth: ...
Club :...
Name: ...
Date of birth: ...
Club :...
Or maybe like this.
First_name | Last name | Player name | Player date of birth | ... | Player name | Player date of birth |
Though I think the first way would be better.
So my Registration can have max 3 players associated with it and I would like to display players attributes on Registration index page.
Is this possible?
ruby-on-rails activeadmin
add a comment |
I have Registration model that has_many players {Player}. Registration has registerer's first name field and last name field, and a Player has such fields as name, date_of_birth, club. From users's perspective it is possible to add up to 3 players on the registration form so a Registration will always have up to 3 players.
Now, in Active Admin on Registration Index view I would like to show those 3 players' attributes, somehow like this.
Registration
First_name | Last name | Players |
Name : ...
Date of birth: ...
Club :...
Name: ...
Date of birth: ...
Club :...
Or maybe like this.
First_name | Last name | Player name | Player date of birth | ... | Player name | Player date of birth |
Though I think the first way would be better.
So my Registration can have max 3 players associated with it and I would like to display players attributes on Registration index page.
Is this possible?
ruby-on-rails activeadmin
add a comment |
I have Registration model that has_many players {Player}. Registration has registerer's first name field and last name field, and a Player has such fields as name, date_of_birth, club. From users's perspective it is possible to add up to 3 players on the registration form so a Registration will always have up to 3 players.
Now, in Active Admin on Registration Index view I would like to show those 3 players' attributes, somehow like this.
Registration
First_name | Last name | Players |
Name : ...
Date of birth: ...
Club :...
Name: ...
Date of birth: ...
Club :...
Or maybe like this.
First_name | Last name | Player name | Player date of birth | ... | Player name | Player date of birth |
Though I think the first way would be better.
So my Registration can have max 3 players associated with it and I would like to display players attributes on Registration index page.
Is this possible?
ruby-on-rails activeadmin
I have Registration model that has_many players {Player}. Registration has registerer's first name field and last name field, and a Player has such fields as name, date_of_birth, club. From users's perspective it is possible to add up to 3 players on the registration form so a Registration will always have up to 3 players.
Now, in Active Admin on Registration Index view I would like to show those 3 players' attributes, somehow like this.
Registration
First_name | Last name | Players |
Name : ...
Date of birth: ...
Club :...
Name: ...
Date of birth: ...
Club :...
Or maybe like this.
First_name | Last name | Player name | Player date of birth | ... | Player name | Player date of birth |
Though I think the first way would be better.
So my Registration can have max 3 players associated with it and I would like to display players attributes on Registration index page.
Is this possible?
ruby-on-rails activeadmin
ruby-on-rails activeadmin
edited Nov 24 '18 at 10:32
jedi
asked Nov 24 '18 at 9:03
jedijedi
514416
514416
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
You could build a method that displays the player details with line separators
def show_players
players.map do |player|
"name: #{player.name}ndob: #{player.date_of_birth}nclub:#{player.club}n"
end.join("n")
end
Then in your admin index block include the method
column :show_players
Where would I define this method? I defined it inindex doblock but it doesn't display anything.
– jedi
Nov 24 '18 at 10:59
1
No, it's a Registration model method... put it inapp/models/registration.rb. Theindex doblock only needs the one column line
– SteveTurczyn
Nov 24 '18 at 11:05
1
It's a registration method like the other registration methods:first_nameand:last_name... those are all sent to the registration object and nowshow_playerswill be sent to the registration object, so that's whyshow_playersis a registration object (instance) method.
– SteveTurczyn
Nov 24 '18 at 11:07
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53456696%2factiveadmin-show-attributes-from-association-model%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You could build a method that displays the player details with line separators
def show_players
players.map do |player|
"name: #{player.name}ndob: #{player.date_of_birth}nclub:#{player.club}n"
end.join("n")
end
Then in your admin index block include the method
column :show_players
Where would I define this method? I defined it inindex doblock but it doesn't display anything.
– jedi
Nov 24 '18 at 10:59
1
No, it's a Registration model method... put it inapp/models/registration.rb. Theindex doblock only needs the one column line
– SteveTurczyn
Nov 24 '18 at 11:05
1
It's a registration method like the other registration methods:first_nameand:last_name... those are all sent to the registration object and nowshow_playerswill be sent to the registration object, so that's whyshow_playersis a registration object (instance) method.
– SteveTurczyn
Nov 24 '18 at 11:07
add a comment |
You could build a method that displays the player details with line separators
def show_players
players.map do |player|
"name: #{player.name}ndob: #{player.date_of_birth}nclub:#{player.club}n"
end.join("n")
end
Then in your admin index block include the method
column :show_players
Where would I define this method? I defined it inindex doblock but it doesn't display anything.
– jedi
Nov 24 '18 at 10:59
1
No, it's a Registration model method... put it inapp/models/registration.rb. Theindex doblock only needs the one column line
– SteveTurczyn
Nov 24 '18 at 11:05
1
It's a registration method like the other registration methods:first_nameand:last_name... those are all sent to the registration object and nowshow_playerswill be sent to the registration object, so that's whyshow_playersis a registration object (instance) method.
– SteveTurczyn
Nov 24 '18 at 11:07
add a comment |
You could build a method that displays the player details with line separators
def show_players
players.map do |player|
"name: #{player.name}ndob: #{player.date_of_birth}nclub:#{player.club}n"
end.join("n")
end
Then in your admin index block include the method
column :show_players
You could build a method that displays the player details with line separators
def show_players
players.map do |player|
"name: #{player.name}ndob: #{player.date_of_birth}nclub:#{player.club}n"
end.join("n")
end
Then in your admin index block include the method
column :show_players
answered Nov 24 '18 at 10:53
SteveTurczynSteveTurczyn
26.6k42738
26.6k42738
Where would I define this method? I defined it inindex doblock but it doesn't display anything.
– jedi
Nov 24 '18 at 10:59
1
No, it's a Registration model method... put it inapp/models/registration.rb. Theindex doblock only needs the one column line
– SteveTurczyn
Nov 24 '18 at 11:05
1
It's a registration method like the other registration methods:first_nameand:last_name... those are all sent to the registration object and nowshow_playerswill be sent to the registration object, so that's whyshow_playersis a registration object (instance) method.
– SteveTurczyn
Nov 24 '18 at 11:07
add a comment |
Where would I define this method? I defined it inindex doblock but it doesn't display anything.
– jedi
Nov 24 '18 at 10:59
1
No, it's a Registration model method... put it inapp/models/registration.rb. Theindex doblock only needs the one column line
– SteveTurczyn
Nov 24 '18 at 11:05
1
It's a registration method like the other registration methods:first_nameand:last_name... those are all sent to the registration object and nowshow_playerswill be sent to the registration object, so that's whyshow_playersis a registration object (instance) method.
– SteveTurczyn
Nov 24 '18 at 11:07
Where would I define this method? I defined it in
index do block but it doesn't display anything.– jedi
Nov 24 '18 at 10:59
Where would I define this method? I defined it in
index do block but it doesn't display anything.– jedi
Nov 24 '18 at 10:59
1
1
No, it's a Registration model method... put it in
app/models/registration.rb . The index do block only needs the one column line– SteveTurczyn
Nov 24 '18 at 11:05
No, it's a Registration model method... put it in
app/models/registration.rb . The index do block only needs the one column line– SteveTurczyn
Nov 24 '18 at 11:05
1
1
It's a registration method like the other registration methods
:first_name and :last_name... those are all sent to the registration object and now show_players will be sent to the registration object, so that's why show_players is a registration object (instance) method.– SteveTurczyn
Nov 24 '18 at 11:07
It's a registration method like the other registration methods
:first_name and :last_name... those are all sent to the registration object and now show_players will be sent to the registration object, so that's why show_players is a registration object (instance) method.– SteveTurczyn
Nov 24 '18 at 11:07
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53456696%2factiveadmin-show-attributes-from-association-model%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown