# Listing actions of the controller

**URL:** <https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294>\
**Category:** Rails\
**Created:** [April 30, 2008, 3:04pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294 "2008-04-30T15:04:01Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 3:04pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/1 "2008-04-30T15:04:01Z")

</div>

Hi to all,

Is it possible to list out all the actions inside the controller.

Thanks in Advance  
Saravanan

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 3:10pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/2 "2008-04-30T15:10:12Z")

</div>

hi saravanan!

Saravanan K. [2008-04-30 15:04]:

> Is it possible to list out all the actions inside the controller.  
> YourController.public\_instance\_methods(false)

hth  
jens

–  
Jens W., Dipl.-Bibl. (FH)  
prometheus - Das verteilte digitale Bildarchiv für Forschung & Lehre  
Kunsthistorisches Institut der Universität zu  
KölnAlbertus-Magnus-Platz, D-50923  
KölnTel.: +49 (0)221 470-6668, E-Mail: removed\_email\_address@domain.invalid  
[http://www.prometheus-bildarchiv.de/](http://www.prometheus-bildarchiv.de/)

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 3:11pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/3 "2008-04-30T15:11:23Z")

</div>

Hi –

On Wed, 30 Apr 2008, Saravanan K. wrote:

> Hi to all,
> 
> Is it possible to list out all the actions inside the controller.

I don’t know whether there’s anything higher lever, but from inside an  
action try this:

self.class.instance\_methods(false)

It won’t, of course, mention cases where you’ve got a template but no  
action definition… but it’s not such a bad idea to put empty actions  
in your controller for those cases anyway. (At least, I like to.)

David

–  
Rails training from David A. Black and Ruby Power and Light:  
INTRO TO RAILS June 9-12 Berlin  
ADVANCING WITH RAILS June 16-19 Berlin  
INTRO TO RAILS June 24-27 London (Skills Matter)  
See [http://www.rubypal.com](http://www.rubypal.com) for details and updates!

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 4:01pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/4 "2008-04-30T16:01:40Z")

</div>

Visit Indonesia 2008 wrote:

> and how to get method in private, i run your scripts above, and they  
> only show public method. Thank you
> 
> Reinhart  
> [Http://teapoci.blogspot.com](Http://teapoci.blogspot.com)

to get method in private,  
UploadController.private\_instance\_methods(false)

to get method in protected,  
UploadController.protected\_instance\_methods(false)

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 3:23pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/5 "2008-04-30T15:23:00Z")

</div>

and how to get method in private, i run your scripts above, and they  
only show public method. Thank you

Reinhart  
[Http://teapoci.blogspot.com](Http://teapoci.blogspot.com)

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 4:32pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/6 "2008-04-30T16:32:14Z")

</div>

On Wed, Apr 30, 2008 at 8:04 AM, Saravanan K.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Hi to all,
> 
> Is it possible to list out all the actions inside the controller.

This is how I did it once when I needed them as options for a select:

[http://destiney.com/blog/rubyonrails-get-public-actions-from-a-controller](http://destiney.com/blog/rubyonrails-get-public-actions-from-a-controller)

–  
Greg D.  
[http://destiney.com/](http://destiney.com/)

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 4:36pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/7 "2008-04-30T16:36:24Z")

</div>

On 30 Apr 2008, at 14:10, David A. Black wrote:

> I don’t know whether there’s anything higher lever, but from inside an  
> action try this:
> 
> self.class.instance\_methods(false)

Maybe SomeController.action\_methods ? (subject of course to the same  
caveats you give below)

Fred

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 6:33pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/8 "2008-04-30T18:33:23Z")

</div>

Hi –

On Wed, 30 Apr 2008, Frederick C. wrote:

> > > Hi to all,  
> > > caveats you give below)  
> > > I KNEW Rails must have gotten there before me 🙂 I’m just such a  
> > > low-level kind of person…

David

–  
Rails training from David A. Black and Ruby Power and Light:  
INTRO TO RAILS June 9-12 Berlin  
ADVANCING WITH RAILS June 16-19 Berlin  
INTRO TO RAILS June 24-27 London (Skills Matter)  
See [http://www.rubypal.com](http://www.rubypal.com) for details and updates!

---

<div class="post-metadata">

**Author:** ![saravanankrishnan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@saravanankrishnan](https://www.ruby-forum.com/u/saravanankrishnan)\
**Post date:** [April 30, 2008, 5:06pm UTC](https://www.ruby-forum.com/t/listing-actions-of-the-controller/136294/9 "2008-04-30T17:06:11Z")

</div>

Frederick C. [2008-04-30 16:35]:

> Maybe SomeController.action\_methods ?  
> this includes inherited and included methods as well (namely from  
> ApplicationController, which seems undesirable). OTOH, it respects  
> hidden actions. so, to combine the two:

SomeController.public\_instance\_methods(false) -  
SomeController.hidden\_actions

oh, one more thing: if you have filter\_parameter\_logging in your  
controller, filter\_parameters will be added to that controller’s  
public instance methods.

cheers  
jens
