用Ruby On Rails搭建简易小说网站

开发工具:RadRails

 

1:先建立一个工程(New Rails project),RadRails里面可以直接建立,建立的时候可以选择Rails版本和数据库,数据库,选择了Mysql数据库,Rails2.3.4版本,确定生成(默认的话,工程建立完成后,服务器就会自动启动)

为了方便开发,可以选择几个常用的View显示在界面上,可以从“Window”->“Show View”里面去选择,我就选择了Generators,Rake Tasks和Server

工程建立后,总想看一下效果的,既然是小说站,当然以小说为主,所以,先试着“创建小说”吧。选择Generators面板,选择命令为Scoffold,参数为book title:string author:string book_type:string commend:integer words:integer last_update:datetime,确定 。

2:先把服务器关掉,不然每一次操作它会重启,会覆盖掉console上面的信息。进入自动生成的config目录下,找到database.yml

    这里有三个环境下的数据库配置,分别为development,test和production.,这里使用的是development数据库,叫test_development。
然后利用这个配置,在mysql中生成对应的数据库。
右击项目,在弹出来的菜单中选择Rake>>db>>create>>all对应的数据库就生成了。可以进到mysql中看看生成的数据库。

3:在db/migrate里面,已经由程序自动建立了一个迁移任务create_books.rb文件,我们可以看到Scoffold生成的表的属性(有些数据应该另外建表的,为了简单,就直接在一个表里):

class CreateBooks < ActiveRecord::Migration
  def self.up
    create_table :books do |t|
      t.string "title" #书名
    t.string "author" #作者
    t.string "book_type"  #类别
    t.integer "commend"  #总推荐
    t.integer "words"  #总字数
    t.datetime "last_update"  #更新日期
      t.timestamps
    end
  end

  def self.down
    drop_table :books
  end
end

3:点击Rake Tasks视图,在左边的下拉框选择db:migrate命令,不需要填参数,点击方向箭头go.控制台上输出:
可以看到数据库的表books也生成了。在db目录下,生成了一个schema.rb文件。
在mysql中用show tables命令,可以看到除了users表,还生成了一个schema_info表,用于记录数据库的迁移信息。至此,基本上完成了一个ruby on rails项目。
4:现在来看看成果:在servers视图,启动项目服务器。在地址栏输入http://locahost:3001/books,可以看到出来一个简单的页面,增删改查基本的功能都具备了。

用Ruby On Rails搭建简易小说网站

 

我们看下新建(New book)功能(也即view视图 views/books/new.html.erb)

 

<h1>New book</h1>

<% form_for(@book) do |f| %>
  <%= f.error_messages %>

  <p>
    <%= f.label :title %><br />
    <%= f.text_field :title %>
  </p>
  <p>
    <%= f.label :author %><br />
    <%= f.text_field :author %>
  </p>
  <p>
    <%= f.label :book_type %><br />
    <%= f.text_field :type %>
  </p>
  <p>
    <%= f.label :commend %><br />
    <%= f.text_field :commend %>
  </p>
  <p>
    <%= f.label :words %><br />
    <%= f.text_field :words %>
  </p>
  <p>
    <%= f.label :last_update %><br />
    <%= f.datetime_select :last_update %>
  </p>
  <p>
    <%= f.submit "Create" %>
  </p>
<% end %>

<%= link_to 'Back', books_path %>

 

我们修改下,简单点,变成中文(建立一本新书,我们需要哪些字段呢?书名,作者,类型是需要我们手动输出的,至于字数等数字内容,就应该在更新小说时或读者点击推荐时,动态增加,所以,建立新书页面上,有三项即可)

<h1>New book</h1>

<% form_for(@book) do |f| %>
  <%= f.error_messages %>

  <p>
    <%= f.label :书名 %><br />
    <%= f.text_field :title %>
  </p>
  <p>
    <%= f.label :作者 %><br />
    <%= f.text_field :author %>
  </p>
  <p>
    <%= f.label :类型 %><br />
    <%= f.text_field :book_type %>
  </p>

  <!--
    <p>
    <%= f.label :commend %><br />
    <%= f.text_field :commend %>
  </p>
  <p>
    <%= f.label :words %><br />
    <%= f.text_field :words %>
  </p>
  <p>
    <%= f.label :last_update %><br />
    <%= f.datetime_select :last_update %>
  </p>
  -->
  <p>
    <%= f.submit "Create" %>
  </p>
<% end %>

<%= link_to 'Back', books_path %>

 

用Ruby On Rails搭建简易小说网站

 

我们再看显示页面(views/books/index.html.erb)

 

<h1>Listing books</h1>

<table>
  <tr>
    <th>Title</th>
    <th>Author</th>
    <th>Book Type</th>
    <th>Commend</th>
    <th>Words</th>
    <th>Last update</th>
  </tr>

<% for book in @books %>
  <tr>
    <td><%=h book.title %></td>
    <td><%=h book.author %></td>
    <td><%=h book.book_type %></td>
    <td><%=h book.commend %></td>
    <td><%=h book.words %></td>
    <td><%=h book.last_update %></td>
    <td><%= link_to 'Show', book %></td>
    <td><%= link_to 'Edit', edit_book_path(book) %></td>
    <td><%= link_to 'Destroy', book, :confirm => 'Are you sure?', :method => :delete %></td>
  </tr>
<% end %>
</table>

<br />

<%= link_to 'New book', new_book_path %>

 

 

修改下变成中文

 

<h1>小说列表</h1>

<table border="1">
  <tr>
    <th>书名</th>
    <th>作者</th>
    <th>类型</th>
  </tr>

<% for book in @books %>
  <tr>
    <td><%=h book.title %></td>
    <td><%=h book.author %></td>
    <td><%=h book.book_type %></td>
    <td><%= link_to '查看', book %></td>
    <td><%= link_to '编辑', edit_book_path(book) %></td>
    <td><%= link_to '删除', book, :confirm => 'Are you sure?', :method => :delete %></td>
  </tr>
<% end %>
</table>

<br />

<%= link_to '新建小说', new_book_path %>

 

用Ruby On Rails搭建简易小说网站 

 

 

文章 不是原创(记录步骤), 原文地址是:

http://www.cnblogs.com/varlxj/archive/2010/02/02/1662040.html

 

 

你可能感兴趣的:(mysql,F#,Ruby,ActiveRecord,Rails)