Rails框架技术讲座:网络应用软件页面技术jMaki on Rails
目录
(一)系统环境:
- Ruby 语言 1.8.4版本, 点击这里Ruby1.8.4。要想安装多个Ruby语言运行环境请看这里。
- Rails 框架 1.2.1版本,安装方法请看这里,最简单方法是第一种方法即可。
- Windows XP 或者 Windows 2000操作系统 或者 Linux操作系统
- 需要一个浏览器,如FireFox1.5.0.1以上版本。
- 开发编辑工具 Notepad2 ,安装方法请单击这里,复制一个notepad2.exe,并且更名为vi.exe。
- 在Windows XP上安装Linux核心命令,点击这里。
- 如何在Windows Console下使用命令svn(下载软件),点击这里。
- 安装数据库系统SQLite3,点击这里。
(二)前提条件:
- 在本机Winodw操作系统上,我们的工作目录为d:/works_rails。
- 你的电脑必须在线。
(三)目的:
- 本文将说明网络页面技术jMaki上如何和Rails框架技术相互有机地结合在一起的。
- 本讲座的完整代码请您在Google Code Hosting上查看:
或者下载http://cnruby.googlecode.com/svn/trunk/rails-projects/use-jmaki
svn co http://cnruby.googlecode.com/svn/trunk/rails-projects/use-jmaki
(四)解决方案:
- 我们创建Rails框架应用软件的根目录:
mkdir use_jmaki
cd use_jmaki - 安装基于Rails框架的jMaki插件:
我们的实例仅仅使用到jMaki框架软件的一个插件jmaki_yahoo,其它的插件也可以使用,安装方法如下:ruby script/plugin source http://jmaki-goodies.googlecode.com/svn/trunk/rails_plugins
ruby script/plugin install jmaki_core
ruby script/plugin install jmaki_yahooruby script/plugin install jmaki_dojo
ruby script/plugin install jmaki_ext
ruby script/plugin install jmaki_flickr
ruby script/plugin install jmaki_google
ruby script/plugin install jmaki_native
ruby script/plugin install jmaki_scriptaculous
ruby script/plugin install jmaki_spry - 编辑数据库配置文件 database.yml :
vi config/database.yml
- 利用Rails框架自动代码生成技术,我们创建一个模型Admin及其相关代码:
ruby script/generate scaffold_resource admin
- 针对我们的模板页面文件,增加jMaki技术的相关代码 admins.rhtml,以便使用JavaScript和CSS代码。这是本文的精华部分之一。
vi app/views/layouts/admins.rhtml
<%= stylesheet_link_tag "jmaki-standard", :media => "all" -%>
<%= javascript_include_tag "jmaki" -%>
<%= jmaki_setup -%> - 编辑数据库移植技术文件 001_create_admins.rb ,并且创建数据库及其相关表:
vi db/migrate/001_create_admins.rb
t.column :username, :string
t.column :password, :string
execute "INSERT INTO admins VALUES(1, 'munich', '24680')"
execute "INSERT INTO admins VALUES(2, 'beijing', '13579')"rake db:migrate
- 利用Rails框架技术和jMaki框架技术,修改页面 index.rhtml 文件。注意这是本文的精华部分之二。下面的代码有二部分代码,前面的是利用Rails框架技术把实际存储到一个Array中;后面的是jMaki框架的代码技术。
vi app/views/admins/index.rhtml
<h1>Listing admins</h1>
<% @table_data = [] %>
<% for admin in @admins %>
<% @table_data << [ admin.username, admin.password,
link_to('Show', admin_path(admin)),
link_to('Edit', edit_admin_path(admin)),
link_to('Destroy', admin_path(admin), :confirm => 'Are you sure?', :method => :delete)
] %>
<% end %>
<%= jmaki_widget 'yahoo.dataTable',
:args => {
:columns => [
{ :title => 'Usename', :width => 200, :locked => false },
{ :title => 'Password', :width => 75, :renderer => 'italic' },
{ :title => 'Show', :width => 60, :renderer => 'italic' },
{ :title => 'Edit', :width => 60, :renderer => 'italic' },
{ :title => 'Destroy', :width => 60, :renderer => 'italic' },
]
},
:value => @table_data
-%>
<br />
<%= link_to 'New admin', new_admin_path %> - 启动网络服务器:
ruby script/server
- 浏览我们的网络应用软件:
start http://localhost:3000/admins
(五)视听教学:
(六)必须注意的问题:
- 利用NetBeans工具,可以更好地使用jMaki框架技术。
(七)参考资料:
- https://ajax.dev.java.net/files/documents/3115/45044/org-netbeans-modules-sun-ajax-updatecenter.nbm
- https://ajax.dev.java.net/servlets/ProjectDocumentList?folderID=0
- http://blogs.sun.com/arungupta/entry/jmaki_on_rails_for_dummies
- http://jmaki.com/
(八)命令清单:
mkdir use_jmaki
cd use_jmaki
ruby script/plugin source http://jmaki-goodies.googlecode.com/svn/trunk/rails_plugins
ruby script/plugin install jmaki_core
ruby script/plugin install jmaki_dojo
ruby script/plugin install jmaki_ext
ruby script/plugin install jmaki_flickr
ruby script/plugin install jmaki_google
ruby script/plugin install jmaki_native
ruby script/plugin install jmaki_scriptaculous
ruby script/plugin install jmaki_spry
ruby script/plugin install jmaki_yahoo
mysqladmin -u root -proot create jmaki
vi config/database.yml
ruby script/generate scaffold_resource admin
vi app/views/layouts/admins.rhtml
<%= stylesheet_link_tag "jmaki-standard", :media => "all" -%>
<%= javascript_include_tag "jmaki" -%>
<%= jmaki_setup -%>
vi db/migrate/001_create_admins.rb
t.column :username, :string
t.column :password, :string
execute "INSERT INTO admins VALUES(1, 'munich', '24680')"
execute "INSERT INTO admins VALUES(2, 'beijing', '13579')"
rake db:migrate
vi app/views/admins/index.rhtml
<h1>Listing admins</h1>
<% @table_data = [] %>
<% for admin in @admins %>
<% @table_data << [ admin.username, admin.password,
link_to('Show', admin_path(admin)),
link_to('Edit', edit_admin_path(admin)),
link_to('Destroy', admin_path(admin), :confirm => 'Are you sure?', :method => :delete)
] %>
<% end %>
<%= jmaki_widget 'yahoo.dataTable',
:args => {
:columns => [
{ :title => 'Usename', :width => 200, :locked => false },
{ :title => 'Password', :width => 75, :renderer => 'italic' },
{ :title => 'Show', :width => 60, :renderer => 'italic' },
{ :title => 'Edit', :width => 60, :renderer => 'italic' },
{ :title => 'Destroy', :width => 60, :renderer => 'italic' },
]
},
:value => @table_data
-%>
<br />
<%= link_to 'New admin', new_admin_path %>
ruby script/server
(九)下载文件pdf: