zoukankan      html  css  js  c++  java
  • Ruby on rails开发从头来(windows)(十三)订单(Order)

     

    在上次的内容里,我们编写了CHECKOUT的处理。这次我们将显示购物车和订单放在一个页面上表示,这样用户在下订单的时候就可以很方便地看到自己的购物情况。

     

    1.         修改checkout.rhtml文件,只要添加一句代码:

    <%= error_messages_for("order") %>

    <%= render_component(:action => "display_cart") %> ――这句 

    <%= stylesheet_link_tag "scaffold", "depot", :media => "all" %>

    display_cart页面上点击“checkout”链接,可以看到checkout页面已经发生了改变,如图:

             
    2.        
    但是我们看到,在页面的右上方,Checkout链接还显示着,我们当然要把它去掉。回到上面添加的那句代码:

    <%= render_component(:action => "display_cart") %>

    render_component实际上是把整个display_cart页面全部显示了,现在我们来添加参数,让它能区分是在display_cart页面还是在checkout页面。

    checkout页面上,把上面添加的代码改为:

    <%= render_component(:action => "display_cart",:params => { :context => :checkout }) %>

    可以看到我们添加了一个context参数。

    下面要修改store_controller.rb文件,修改display_cart方法为:

    def display_cart

    @cart = find_cart

    @items = @cart.items

    if @items.empty?

    redirect_to_index("Your cart is currently empty")

    end

    if params[:context] == :checkout

    render(:layout=> false)

    end

    end

    然后修改display_cart.rhtml页面,对context参数为checkout的情况做出判断,然后作对应的显示:

    将原来的代码:

    <ul>

        <li><%= link_to 'Continue shopping', :action => "index" %></li>

        <li><%= link_to 'Empty cart', :action => "empty_cart" %></li>

        <li><%= link_to 'Checkout', :action => "checkout" %></li>

    </ul>

    修改为:

    <ul>

        <li><%= link_to 'Continue shopping', :action => "index" %></li>

        <% unless params[:context] == :checkout -%>

                <li><%= link_to 'Empty cart', :action => "empty_cart" %></li>

                <li><%= link_to 'Checkout', :action => "checkout" %></li>

        <% end -%>

    </ul>

    OK了,现在来看看效果,如图:

     

  • 相关阅读:
    bzoj 4034 [HAOI2015]树上操作——树链剖分
    bzoj 1179 [Apio2009]Atm——SCC缩点+spfa
    bzoj 1123 [POI2008]BLO——点双连通分量
    poj1830开关问题——异或高斯消元
    bzoj2004公交线路——DP+矩阵加速递推
    bzoj2875随机数生成器——矩阵快速幂
    Splay模板
    map插入与查找
    bzoj1013高斯消元
    bzoj2257瓶子与燃料——最大公约数
  • 原文地址:https://www.cnblogs.com/dahuzizyd/p/ruby_rails_dotnet_windows_study_13.html
Copyright © 2011-2022 走看看