# Difficult view code logic

**URL:** <https://www.ruby-forum.com/t/difficult-view-code-logic/96855>\
**Category:** Rails\
**Created:** [July 2, 2006, 5:43pm UTC](https://www.ruby-forum.com/t/difficult-view-code-logic/96855 "2006-07-02T17:43:29Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![craigrails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c2a13f/32.png) [@craigrails](https://www.ruby-forum.com/u/craigrails)\
**Post date:** [July 2, 2006, 5:43pm UTC](https://www.ruby-forum.com/t/difficult-view-code-logic/96855/1 "2006-07-02T17:43:29Z")

</div>

this one really has me stumped…

\<%= user.in\_out == “In” ? {image\_tag url\_for\_file\_column(“personnel”,  
“image”, “thumb”)} if user.image : user.in\_out %\>

What I am wanting to do…

if user.in\_out == “In”, load their thumbnail if it exists, load  
public/images/in.jpg if not, or else load public/images/out.jpg

Can someone help with the construction of this?

Craig

---

<div class="post-metadata">

**Author:** ![craigrails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c2a13f/32.png) [@craigrails](https://www.ruby-forum.com/u/craigrails)\
**Post date:** [July 2, 2006, 5:59pm UTC](https://www.ruby-forum.com/t/difficult-view-code-logic/96855/2 "2006-07-02T17:59:10Z")

</div>

Perhaps just write a utility method in the user model, or in a helper  
for this.

For instance, you could add these methods to your user class (untested):

def get\_thumbnail  
if in?  
self.image.nil? ? ‘in.jpg’ : self.image  
else  
‘out.jpg’  
end  
end

def in?  
self.in\_out == ‘In’  
end

Then in your view you could just say:

\<%= image\_tag(user.get\_thumbnail()) %\>

Tom

On 7/2/06, Craig W. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Can someone help with the construction of this?
> 
> Craig
> 
> * * *
> 
> Rails mailing list  
> removed\_email\_address@domain.invalid  
> [http://lists.rubyonrails.org/mailman/listinfo/rails](http://lists.rubyonrails.org/mailman/listinfo/rails)

–  
Tom D.

[http://atomgiant.com](http://atomgiant.com)  
[http://gifthat.com](http://gifthat.com)

---

<div class="post-metadata">

**Author:** ![craigrails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c2a13f/32.png) [@craigrails](https://www.ruby-forum.com/u/craigrails)\
**Post date:** [July 2, 2006, 6:17pm UTC](https://www.ruby-forum.com/t/difficult-view-code-logic/96855/3 "2006-07-02T18:17:49Z")

</div>

Hi Craig,

Craig W. wrote:

> What I am wanting to do…
> 
> if user.in\_out == “In”, load their thumbnail if it exists, load  
> public/images/in.jpg if not, or else load public/images/out.jpg

I’ve not used image\_tag yet so I’ll not guess about the syntax for that,  
but  
WRT the other part…

\<% if @user.in\_out == ‘In’ %\>  
load public/images/in.jpg  
\<% else %\>  
load public/images/out.jpg  
\<% end %\>

Notice that you’ll need to make the ‘user’ variable an instance variable  
for  
the view to have access to it.

hth,  
Bill

---

<div class="post-metadata">

**Author:** ![craigrails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/c2a13f/32.png) [@craigrails](https://www.ruby-forum.com/u/craigrails)\
**Post date:** [July 2, 2006, 10:19pm UTC](https://www.ruby-forum.com/t/difficult-view-code-logic/96855/4 "2006-07-02T22:19:16Z")

</div>

On Sun, 2006-07-02 at 11:15 -0500, Bill W. wrote:

> WRT the other part…
> 
> \<% if @user.in\_out == ‘In’ %\>  
> load public/images/in.jpg  
> \<% else %\>  
> load public/images/out.jpg  
> \<% end %\>
> 
> Notice that you’ll need to make the ‘user’ variable an instance variable for  
> the view to have access to it.

* * *

thanks - the logic methology inside the view code was what I needed to  
understand. I got it now

Thanks Tom too.

Craig
