rails.图书管理系统——图书“上架”状态一键切换

动图效果图

实际运行代码

* config/routes.rb *

  resources :books do
    collection do
+     post 'book_update'
    end
  end

app/controllers/books_controller.rb

* def destroy

  def book_update
    @book = Book.find(params[:id])     #接受view层传递的id参数
    if @book.book_state == "上架"       #图书状态如果为"上架"字符串
      @book.update(book_state: "下架")  #更新为"下架"字符串状态
      flash[:error] = "下架成功"         
    else                               #图书状态为非"上架"字符串
      @book.update(book_state: "上架")  #更新为"上架"字符串状态
      flash[:error] = "上架成功"
    end
    redirect_to :back
  end

app/views/books/index.html.erb

  <% @books.each do |book| %>
    <tr class="text-info">
      <td><%= book.title %></td>
      <td><%= book.text %></td>
      <td>
                         #线上图书状态字符串          #动作路由         #设定传递id值       #路由执行post动作
+         <%= link_to("#{book.book_state}", book_update_books_path(:id => book.id), method: :post , :class => "btn btn-xs btn-default") %>
      </td>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值