Tie a Text Field to a Model : Model « Rails « Ruby






Tie a Text Field to a Model


File: controllers\hello_controller.rb

class HelloController < ApplicationController
  def there
    @data_hash = params[:cruncher]
    @cruncher = Cruncher.new(@data_hash[:crunch])

    @data = @cruncher.crunch
  end

  def input
  end
end

File: app\models\cruncher.rb

class Cruncher
  attr_reader :crunch
  attr_writer :crunch

  def initialize(data)
    @crunch = data
  end

end

File: app\views\hello\input.rhtml

<html>
  <head>
    <title>Using Text Fields</title>
  </head>
  <body>
    <h1>Working With Text Fields</h1>
    This Ruby on Rails application lets you read data from text fields.
    <br>
    <%= form_tag ({:action => "there"}, {:method => "post"}) %>
      Please enter your name.
      <br>
      <%= text_field ("cruncher", "crunch", {"size" => 30}) %>
      <br>
      <br>
      <input type="submit"/>
    <%= form_tag %>
  </body>
</html>

File: app\views\hello\there.rhtml

<html>
  <head>
    <title>Using HTML Control Shortcuts</title>
  </head>

  <body>
    <h1>Using HTML Control Shortcuts</h1>
    This application uses Rails HTML control shortcuts.
    <br>
    <br>
    Your name is <%= @data %>.
    <br>
    <br>
  </body>
</html>


Start the WEBrick server: ruby script/server
http://localhost:3000/hello/input




 








tieTextFieldModel.zip( 92 k)

Related examples in the same category

1.Working with Models
2.Initialize Data in an HTML Control