0

Rails 的新手,所以我正在实现一个基本的应用程序。

文本字段和一个提交按钮,单击提交按钮时,将显示在放置在索引页面提交按钮下方的 div 上的文本。

我尝试的代码和事情如下 -

网站网址 -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

型号列表.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

在控制器中

def index
  @lists = List.all
end

在 index.html.erb 中

<% @lists.each do |list| %> 
  ...
<% end %>
于 2013-02-13T08:50:44.250 回答
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 回答