# Using same partial with diff ajax requests

**URL:** <https://www.ruby-forum.com/t/using-same-partial-with-diff-ajax-requests/160034>\
**Category:** Rails\
**Created:** [February 11, 2009, 6:06am UTC](https://www.ruby-forum.com/t/using-same-partial-with-diff-ajax-requests/160034 "2009-02-11T06:06:18Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [February 11, 2009, 6:06am UTC](https://www.ruby-forum.com/t/using-same-partial-with-diff-ajax-requests/160034/1 "2009-02-11T06:06:18Z")

</div>

Im wondering what the best design implementation with DRY in mind in  
the following situation. I have a number of situations where I am  
rendering the same partial with different ajax requests. For example,  
I have an inbox table and I have to link\_to\_remotes. One links to  
viewing all messages and another links to show a single message. Im  
wondering, does it make sense to use the same partial and create a  
variable in the controller which could be used in an if else statement  
within the view. like:

def show  
@type = “show”  
page.replace\_html “inbox\_message”, :partial =\> ‘message’, :locals =\>  
{:type =\> @type}  
end

def index  
@type = “show\_all”  
page.replace\_html “inbox\_message”, :partial =\> ‘message’, :locals =\>  
{:type =\> @type}  
end

then in the \_message partial i could have somehting like:  
if @type == “show”  
only show one message  
else  
show all messages  
end

Is there a better way to do this? Would just creating two different  
partials be any better? What about any performance issues?

Thanks, Dave

---

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [February 11, 2009, 9:36am UTC](https://www.ruby-forum.com/t/using-same-partial-with-diff-ajax-requests/160034/2 "2009-02-11T09:36:38Z")

</div>

I think 2 partials would work nicely:

# \_messages.html.erb

# Listing Messages

 \<%= render :partial =\> 'message', :collection =\> @messages %\>

# \_message.html.erb
- \<%= message.title %\> - \<%= message.body %\>

Aaron
