zoukankan      html  css  js  c++  java
  • Ruby on rails开发从头来(windows)(三)实现页面间的跳转

    在上篇随笔Ruby on rails开发从头来(windows)(二)-创建项目和第一个Hello world 中,我们介绍了如何使用InstantRails创建一个项目和编写一个简单的Helloworld页面,今天在上次的基础上,写一个简单的页面跳转。

    1.        将app\controllers目录下的say_controller.rb文件的内容改成下面这样:

    class SayController < ApplicationController

           def Hello

                         @time = Time.now

           end

           def goodby

           end

    end

    我们看到和上篇随笔中的内容相比,添加了:

    def goodby

    end

    2.        修改app\views\say目录下的hello.rhtml的内容:

    <html>

    <p>

    Say <a href="/say/goodbye">GoodBye</a>!

    </p>

    </html>

    3.        下面我们要在app\views\say目录下创建一个goodbye.rhtml文件,内容如下:

    <html>

    <head>

    <title>See You Later!</title>

    </head>

    <body>

    <h1>Goodbye!</h1>

    <p>

    It was nice having you here.

    </p>

    </body>

    </html>

    4.        在浏览器地址栏中输入:http://127.0.0.1:3000/say/hello,再试试点链接看看,页面已经可以迁移了。

    5.        现在我们再添加由goodbye页面到hello页面的链接,修改goodbye.rhtml的内容为:

    <html>

    <p>

    Say <a href="/say/hello">Hello</a>!

    </p>

    </html>

    再试试看,两个页面已经可以互相跳转了。

    6.        在上面的代码中,我们看到页面间的迁移使用的是路径来定位,如果页面存放的位置发生了变化,那么跳转肯定会失败,更安全的是使用下面的方式。

    修改hello.rhtml的内容:

    <html>

    <head>

    <title>Hello, Rails!</title>

    </head>

    <body>

    <h1>Hello from Rails!</h1>

    <p>

    It is now <%= @time %>.

    </p>

    <p>

    Time to say

    <%= link_to "GoodBye!", :action => "goodbye" %>

    </p>

    </body>

    </html>

     

    修改goodbye.rhtml的内容:

    <html>

    <head>

    <title>See You Later!</title>

    </head>

    <body>

    <h1>Goodbye!</h1>

    <p>

    It was nice having you here.

    </p>

    <p>

    Say <%= link_to "Hello", :action=>"hello" %> again.

    </p>

    </body>

    </html>

     

    注意代码里的两句:

    <%= link_to "GoodBye!", :action => "goodbye" %>

    <%= link_to "Hello", :action=>"hello" %>

    可以看到,实际上就是调用了goodbyehello两个action

     

    OK,这篇就到这里,先求快速挺进,概念的东西先不追究,希望我能坚持下去。

  • 相关阅读:
    mysql中的几种join 及 full join问题
    MySQL基础练习题
    SQL之IFNULL()
    SQL之查找表中字段的值相同的记录
    Mysql之将一张表内容导入另一张表中
    selenium无界面操作浏览器与Chrome Options的启动项设置
    SQL UNION 和 UNION ALL 操作符
    Python断言方法assert
    Python标准库--contextlib模块
    Python标准库--itertools模块
  • 原文地址:https://www.cnblogs.com/zhouwenwu/p/2351109.html
Copyright © 2011-2022 走看看