Problem displaying image from database
Hi, I am working on a website which allows both customers and account users to upload their pictures.
Using the recipe provided(in topic above), I have managed to make it work for the customers module where I have two tables, Customer and Image on a 1 on 1 relationship. And I display the image with
<img src="<%= url_for(:action => 'picture', :id => @customer.id) %>" alt="Picture" class="photo"/>
which generates the following html example
<img src="/customers/picture/986" alt="Picture" class="photo">
Now, my second module is slightly more complicated where I have 3 tables involved. 1. Account - which only stores username and password 2. Basic_profile - which stores things like Name, Gender, birthday and etc. Note - I’m using the edit page here to upload and display the user’s picture. 3. Picture - which stores account users pictures.
The relationship here is Picture belongs_to Basic_profile, and Basic_profile belongs_to Account.
In my routes I have a nested resource.
resources :accounts do resource :basic_profile, :contact end
Notice the singular basic_profile which makes the path as http://localhost:3000/accounts/1/basic_profile/edit
Uploading and saving into the database are all fine. My problem now is displaying the picture in the edit page. The following code doesn’t work.
<img src="<%= url_for(:action => 'picture', :id => @basic_profile.id) %>" alt="Picture" class="profile_picture" />
I have tried to fix this but nothing works. Senselessly playing with the path like http://localhost:3000/accounts/1/basic_profile/picture gives me routing error.
Please help. Thanks!