程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> Ruby on rails開發從頭來(windows)(六)-美化你的列表頁面

Ruby on rails開發從頭來(windows)(六)-美化你的列表頁面

編輯:關於JAVA

在上一篇隨筆中,我們給Products的創建頁面添加了輸入驗證,今次的內容非常簡單,來稍稍美化下Products的列表頁面。

1.打開app\views\admin\list.rhtml文件,可以看到下面的代碼

<h1>Listing products</h1>
  
<table>
 <tr>
 <% for column in Product.content_columns %>
  <th><%= column.human_name %></th>
 <% end %>
 </tr>
<% for product in @products %>
 <tr>
 <% for column in Product.content_columns %>
  <td><%=h product.send(column.name) %></td>
 <% end %>
  <td><%= link_to 'Show', :action => 'show', :id => product %></td>
  <td><%= link_to 'Edit', :action => 'edit', :id => product %></td>
  <td><%= link_to 'Destroy', { :action => 'destroy', :id => product }, :confirm => 'Are you sure?', :method => :post %></td>
 </tr>
<% end %>
</table>
  
<%= link_to 'Previous page', { :page => @product_pages.current.previous } if @product_pages.current.previous %>
<%= link_to 'Next page', { :page => @product_pages.current.next } if @product_pages.current.next %>
  
<br />
  
<%= link_to 'New product', :action => 'new' %>

可以看到,list頁面實際上是對Products做循環,然後對每行,每列逐個輸出到一個Table中,而link_to函數,我們在前面的內容中也使用過。

2.修改app\views\admin\list.rhtml的內容,如下:

<h1>Product Listing</h1>
<table cellpadding="5" cellspacing="0">
 <%
 odd_or_even = 0
 for product in @products
 odd_or_even = 1 - odd_or_even
 %>
  
  <tr valign="top" class="ListLine<%= odd_or_even %>">
   <td>
    <img width="60" height="70" src="<%= product.image_url %>"/>
   </td>
   <td width="60%">
    <span class="ListTitle"><%= h(product.title) %></span><br />
   <%= h(truncate(product.description, 80)) %>
   </td>
   <td align="right">
    <%= product.date_available.strftime("%y-%m-%d") %><br/>
    <strong>$<%= sprintf("%0.2f", product.price) %></strong>
   </td>
   <td class="ListActions">
    <%= link_to 'Show', :action => 'show', :id => product %><br/>
    <%= link_to 'Edit', :action => 'edit', :id => product %><br/>
    <%= link_to 'Destroy', { :action => 'destroy', :id => product },
    :confirm => "Are you sure?" %>
   </td>
  </tr>
 <% end %>
</table>
<%= if @product_pages.current.previous
 link_to("Previous page", { :page => @product_pages.current.previous })
 end
%>
<%= if @product_pages.current.next
 link_to("Next page", { :page => @product_pages.current.next })
 end
%>
<br />
<%= link_to 'New product', :action => 'new' %>

3.在上面的代碼裡,我們可以看到td class="ListActions"這樣的代碼,下來我們添加這些css樣式的內容:

將下面的內容添加到public\stylesheets\ scaffold.css文件中:

.ListTitle {
color: #244;
font-weight: bold;
font-size: larger;
}
.ListActions {
font-size: x-small;
text-align: right;
padding-left: 1em;
}
.ListLine0 {
background: #e0f8f8;
}
.ListLine1 {
background: #f8b0f8;
}

4.再次運行Products的list頁面,可以看到效果,如圖:

OK,今天的內容很簡單,今後我會盡量多寫些自己的東西,不光是抄書了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved