要為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,
rder => :position)
respond_to do |format|
format.html # index.html.erb
format.xml { render
ml => @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
這樣~在重新整理之後~位置也是新的位置了
分享到:
相关推荐
在这个全球互联的世界中,计算机编程和 Web 应用程序开发都在迅猛发展,我很期待能为中国的开发者提供 Ruby on Rails 培训。学习英语这门世界语言是很重要的,但先通过母语学习往往会更有效果。正因为这样,当看到 ...
《Ruby on Rails 101》是一本介绍Ruby on Rails(简称RoR或ROR)的基础书籍,旨在为初学者提供一个全面而深入的学习框架。本书由Peter Marklund编写,包含了五天课程的演示文稿和相关资料,覆盖了从安装到实际应用...
Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码的可读性。Rails以其“约定优于配置”(Convention over Configuration)...
Ruby on Rails是一款基于Ruby语言的开源Web开发框架,它遵循MVC(模型-视图-控制器)架构模式,简化了Web应用的开发流程。在Linux环境下安装Ruby on Rails需要一系列的依赖包和步骤,本资源包提供了所需的所有组件,...
ruby on Rails程序设计深入剖析与范例应用(pdf+视频+源码)
《Ruby on Rails 3 Tutorial》是一本专门为初学者设计的指南,旨在帮助读者快速掌握Ruby on Rails这一强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby语言的一个开源框架,它采用MVC(Model-View-...
Ruby on Rails,简称Rails,是一款基于Ruby语言的开源Web应用框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web应用程序的开发。Rails由David Heinemeier Hansson于2004年创建,它提倡“约定优于配置...
- **重要概念**:本指南旨在帮助读者深入理解Ruby on Rails(以下简称Rails)4.2.5版本的核心功能与最佳实践。 - **基础假设**:读者已经具备一定的Ruby编程基础,并对Web开发有一定的了解。 #### 二、什么是Rails...
Ruby on Rails,简称Rails,是由David Heinemeier Hansson基于Ruby语言开发的一个开源Web应用程序框架。这个框架遵循“约定优于配置”(Convention over Configuration)的原则,致力于简化Web应用的开发流程,提高...
Ruby on Rails(简称Rails)是基于Ruby编程语言构建的一个开源Web应用程序框架,它遵循“约定优于配置”(Convention over Configuration, CoC)的原则,以及“Don't Repeat Yourself”(DRY)的设计理念,极大地...
Ruby on Rails,简称Rails,是基于Ruby语言的一个开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在使Web开发过程更加高效、简洁。本压缩包中的"Ruby on Rails入门经典代码"提供了新手学习...
通过阅读《Ruby on Rails中文指南》,你将逐步熟悉这些概念和技术,最终能够熟练地使用Rails框架构建功能丰富的Web应用。无论你是初学者还是经验丰富的开发者,这份指南都将为你提供宝贵的指导。
《Ruby on Rails入门权威经典》是一本专门为初学者设计的指南,旨在帮助读者全面掌握Ruby on Rails这一强大的Web开发框架。Ruby on Rails(简称Rails)是基于Ruby编程语言的开源框架,以其“DRY(Don't Repeat ...
Ruby on Rails,简称Rails,是基于Ruby语言的开源Web应用框架,它遵循MVC(Model-View-Controller)架构模式,旨在使开发过程更加简洁高效。这个“ruby on rails 教程源码”很可能是为了辅助学习者深入理解Rails的...
Ruby on Rails(简称Rails)是一种基于Ruby编程语言的开源Web应用程序框架,专为敏捷开发而设计,强调简洁的代码和“约定优于配置”的原则。它主要用于构建数据驱动的Web应用,借助于MVC(Model-View-Controller)...
本书教您如何使用Ruby on Rails开发和部署真正的,具有工业实力的Web应用程序,Ruby on Rails是为诸如Twitter,Hulu,GitHub和Yellow Pages等顶级网站提供支持的开源Web框架。
Ruby on Rails,简称Rails,是一种基于Ruby编程语言的开源Web应用程序框架,以其“Convention over Configuration”(约定优于配置)和“Don't Repeat Yourself”(DRY,不要重复自己)的原则著称。Rails使得开发Web...