0

レールは初めてなので、基本的なアプリを実装しています。

テキストフィールドと送信ボタン。送信ボタンをクリックすると、インデックスページの送信ボタンの下に配置されたdivに表示されるテキスト。

コードと私が試していることは次のとおりです-

サイトのURL -http://localhost:3000/lists/index

コントローラーコードのリスト-

class ListsController < ApplicationController
  def index
  List.all
  end

  def add
  @message = params[:todo_text]
  List.create(:title => @message)
  redirect_to '/lists/index', :notice => "Notice"
  end
end

モデルlist.rb-

class List < ActiveRecord::Base
attr_accessible :title
end

ビューリストindex.html.erbコード-

<div id="search">
<%= form_tag("/lists/add", :method=>"post") do %>
  <%= text_field_tag(:todo_text, '',:class=>"formtext" ) %>
  <%= submit_tag("Add Message", :class=>"submit") %>
<% end %>
</div>

テキストを送信すると、同じテキストにリダイレクトされますが、データがページに戻されません。私が間違っていることと、それを修正するにはどうすればよいですか?

4

2 に答える 2

0

試す

<%= form_for @list, :url => { :action => "add" } do |f| %>

コントローラ

def index
@lists = List.all
end

def add
      @list = List.new(params[:title])
      redirect_to @lists, :notice => "Notice"
    end
于 2013-02-13T08:28:16.733 に答える
0

コントローラー内

def index
  @lists = List.all
end

index.html.erbで

<% @lists.each do |list| %> 
  ...
<% end %>
于 2013-02-13T08:50:44.250 に答える