`
ywencn
  • 浏览: 87346 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

zhuan//為Ruby on Rails程式加入拖曳排序功能~

阅读更多

来源: http://www.simplexteam.org/tips/ruby/77-ruby-on-rails-drag-and-drop-sort.html?tmpl=component&print=1&page=

 

要為Ruby on Rails程式加入拖曳排序功能~我們可以使用sortable_element helper function~
他可近呼自動地為程式加入拖曳排序功能
這個程式中會用到acts_as_list插件,請先行安裝~ 我們現在先用scaffold建立基本CRUD功能~

ruby generate scaffold task title:string
 position:integer

現在我們修改Task Model如下

class
 Task <
 ActiveRecord::Base

  acts_as_list
end

這樣便可以將其變成有序列表~
然後我們把Tasks Controller的index Action修改如下

  def
 index
    @tasks
 = Task.find
(
:all
, :order
 =>
 :position
)

 
    respond_to do
 |format|
      format
.html
 # index.html.erb

      format
.xml
  {
 render :xml
 =>
 @tasks
 }

    end

  end

這樣顯示時便會依照List的順序~
現在在layout中的tasks.html.erb的head中加入一行

<%
= javascript_include_tag :defaults
 %>

然後修改index View~

<h1>Listing tasks</h1>
 
<ul id='tasks'>
 
<%
 for
 task in
 @tasks
 %>

  <li id='task_<%
= task.id
 %>
'>
    <%
=h task.title
 %>

    <%
= link_to 'Edit'
, edit_task_path(
task)
 %>

    <%
= link_to 'Destroy'
, task, :confirm
 =>
 'Are you sure?'
, :method
 =>
 :delete
 %>

  </li>
<%
 end
 %>

</ul>
 
<br />
 
<%
= link_to 'New task'
, new_task_path %>

<%
= sortable_element 'tasks'
, :url
 =>
 {
:action =>
 :sort
}
 %>

現在便啟用了拖曳的功能了~不過拖曳後重新整理~位置並沒有更新~
那是因為我們還沒有增加sort Action~
現在到Tasks Controller中加入sort Action

  def
 sort
    params[
:tasks
]
.each_with_index
 do
 |id, position|
      Task.update
(
id, :position
 =>
 position +
 1
)

    end

    render :nothing
 =>
 true

  end

這樣~在重新整理之後~位置也是新的位置了^^

分享到:
评论

相关推荐

    ruby-pingyin ruby中将中文转化成拼音

    这样就用到了要从数据库中提取姓名姓氏首字母的功能。(即中文--&gt;拼音--&gt;首字母)。由于以前没有遇到类似问题,就google。终于找到一个好用的东西。ruby-pinyin。现在介绍给大家。 里面自带api。用法也很简单。 在...

    编码器计数

    bai_zhuan=(int)zhuan/100; shi_zhuan=(int)zhuan0/10; ge_zhuan=(int)zhuan; write_data(table[bai_fen]); write_data(table[shi_fen]); write_data(table[ge_fen]); write_data(table[12]); write...

    ruby中文转拼音的api

    在rails 中 把 pinyin.rb 及 dict 放到lib目录中。 在模型中引入文件。 require "pinyin" 按后实例化一个pinyin py = PinYin.instance py.to_pinyin_abbr("刘德华") #=&gt; ldh py.to_permlink('中文轉漢語拼音') ...

    rslidar雷达数据转velodyne数据功能包

    `rslidar雷达数据转velodyne数据功能包`,正如其名,是一个专为将RoboSense LiDAR的数据转换成与Velodyne兼容格式的工具。这个功能包主要针对的是那些希望将rslidar数据应用于使用Velodyne数据处理流程的系统或算法...

    gssdgv-zhuan-ke-master_java_

    《蚂蚁集团开源的Java研发框架——gssdgv-zhuan-ke-master_java_详解》 在现代软件开发中,高效、稳定且易维护的框架是项目成功的关键因素之一。蚂蚁集团作为全球知名的金融科技公司,其开源的Java研发框架——...

    zhuan 2.zip

    在这个名为"zhuan 2.zip"的压缩包中,包含了一个支持移动端的转盘抽奖程序。这个程序的核心是通过JavaScript实现,使得用户可以通过点击来触发抽奖过程,从而增加用户体验的趣味性和参与度。 首先,我们来看“转盘...

    Word排版应用神童教程

    小编语:随着计算机设备的不断普及,越来越多的办公自动化设备进入了...本文转自“赛迪网”-“电脑应用”-“办公自动化”专区:http://www0.ccidnet.com/school/zhuan/word.htm 在此向原作者表示敬意。 修订人:Abc5186

    Map_out.rar_Map o_mapgis_mapgis noteo_mapgis zhuan jpg_out

    "Map o_mapgis_mapgis noteo_mapgis zhuan jpg_out"这部分可能是描述了这个压缩包的主要功能或者过程,即MapGIS的二次开发功能,用于将MapGIS的地图数据转换成JPG格式的光栅图像。"o_mapgis_mapgis noteo_mapgis...

    zhuan-su-eliang.rar_labview 测_labview 测速_labview测速_labview转速测量_转

    在给定的“zhuan-su-eliang.rar”压缩包中,包含了一个名为“zhuan su eliang.vi”的虚拟仪器(VI),这显然是一款用于转速测量的应用程序。 转速测量是机械工程、汽车工业、电力系统等领域中常见的技术需求。...

    2.6.14 内核移植说明文档(zhuan)

    - 在这里需要启用`[*] MTD partitioning support`以支持分区功能。 - 接着进入`NAND Flash Device Drivers`配置界面,确保已经启用了NAND设备支持(`[*] NAND Device Support`)和针对S3C2410/S3C2440的NAND Flash...

    自媒体新媒体软件工具自媒体zhuan钱秘诀资料

    自媒体新媒体软件工具自媒体zhuan钱秘诀资料

    z zhuan sec_EH4_EH4Z文件转SEC文件_

    标题中的"z zhuan sec_EH4_EH4Z文件转SEC文件_"表明我们正在处理一个涉及到将EH4或EH4Z格式的文件转换为SEC格式的议题。这个过程可能涉及到特定的工具、编程语言或者协议,尤其是在嵌入式系统中,这些文件格式通常与...

    JS/HTML/ASP 代码转换工具非常实用

    ASP则是微软开发的一种服务器端脚本环境,用于生成动态、交互式的网页。在ASP中,开发者可以使用VBScript或JScript编写脚本,与服务器上的数据库或其他应用程序进行交互,生成动态内容。ASP.NET是ASP的升级版,提供...

    zhuan_java_untilgw8_android_

    标题 "zhuan_java_untilgw8_android_" 暗示了这是一个关于使用Java语言在UntilGW8平台上开发Android游戏的项目,特别是一款简单的打砖块游戏。在这个项目中,我们可以深入学习到Java编程语言、Android应用开发的基础...

    英语学习网址(很多哦)

    - **goo 学网** (http://www.gooedu.cn/Article/en/zhuan4zhuan8/zhidao/) - **东方教育在线** (http://www.neworiental.org/) - **新东方英语 4+1 教程** (http://jxue.com/zt/05zt/zxyy/) - **新概念英语** ...

    soho网络zhuan钱的体会.doc

    文档标题和描述中提到的是关于个人通过SOHO(Small Office Home Office)网络工作赚钱的体验,标签为“技术”,这表明讨论的核心是如何利用网络技术和自我经营来赚取收入。部分内容中,作者分享了自己从怀疑到加入...

    英语免费资源(网站)资料.pdf

    20. **goo学网** (http://www.gooedu.cn/Article/en/zhuan4zhuan8/zhidao/):包含英语专业四级、八级的指导和资源。 此外,还有**东方教育在线** (www.neworiental.org/) 和 **新东方英语** 提供的4+1教程以及新...

    网赚整站程序

    先打开conn.asp,把里面的"www.dd2d.cn/zhuan"改成你的网址 2.打开admin/conn.asp,把里面的"www.dd2d.cn/zhuan"改成你的网址 3.打开datebase/#33SSYY.MDB,打开里面的config,把里面的"www.dd2d.cn/zhuan"改成...

    ATM自动取款机,模拟程序

    本程序为一个基于Java Swing的ATM自动取款机模拟系统,实现了用户查询余额、取款、修改密码、转账以及存款等功能。 #### 2. 程序结构与组件 - **主类**:`ATM`类作为程序的主类,继承自`JFrame`,负责整个界面的...

    XUAN-ZHUAN-led.zip_旋转LED_旋转LED 自适应_自适应旋转LED

    "XUAN-ZHUAN-led.zip_旋转LED_旋转LED 自适应_自适应旋转LED"这个压缩包文件内容是关于实现旋转LED自适应转速的程序,其核心目标是让LED屏幕上的字幕能够流畅地滚动,并根据设备的转速自动调整滚动速度,以保持最佳...

Global site tag (gtag.js) - Google Analytics