Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/53.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
努力查看HTML输出中的所有数据库条目_Html_Ruby On Rails_Css_Ruby - Fatal编程技术网

努力查看HTML输出中的所有数据库条目

努力查看HTML输出中的所有数据库条目,html,ruby-on-rails,css,ruby,Html,Ruby On Rails,Css,Ruby,我有一个非常简单的RubyonRails应用程序,它有一个文本框,我可以在其中向数据库输入内容,限制为200个字符 我的目标是在文本框下面列出项目,这样当用户输入某个内容时,它就会出现在不断增长的列表的顶部 现在我有一些蹩脚的代码不起作用,但我不知道为什么 在我的查看页面(位于home.html.erb)中,我有此区域可供查看课程: <td class="my-lessons"> </td> 我不知道如何在代码中调用printLesson,也不知道如何显示Lesson

我有一个非常简单的RubyonRails应用程序,它有一个文本框,我可以在其中向数据库输入内容,限制为200个字符

我的目标是在文本框下面列出项目,这样当用户输入某个内容时,它就会出现在不断增长的列表的顶部

现在我有一些蹩脚的代码不起作用,但我不知道为什么

在我的查看页面(位于
home.html.erb
)中,我有此区域可供查看课程:

<td class="my-lessons">

</td>
我不知道如何在代码中调用printLesson,也不知道如何显示Lessons数据库的内容


任何帮助都将不胜感激

home.html.erb
将在您转到
http://localhost:3000/lesson/home
前提是您在
路由中定义了适当的路由。rb

match 'lesson/home' => 'lesson#home'
因此,在您的
课程
控制器中,在
主页
操作中具有以下内容:

  def printLesson
    @lesson = Lesson.find(params[:id])

    puts @lesson.content
  end
def home
  @lessons = Lesson.all
end
现在在您的
home.html.erb
视图中呈现
@lessons

<% @lessons.each do |lesson| %>
<tr>
    <td class="my-lessons">
      <%= lesson.Name %>
    </td>
</tr>
<% end %>

您遇到的问题是,您必须告诉Rails在控制器操作中输出输入(行
放置@lesson.content
)。Rails按惯例工作。在控制器操作中创建的任何实例变量都可以在视图中访问。因此,上述示例中的
@lessons
变量可以在
home.html.erb
视图中访问

我建议阅读以下内容,了解有关路线和渲染视图的更多信息:


您似乎没有使用RESTful路由,对吗?我相信是的。我现在还没到做其他事情的程度。我知道,我没有正确调用该方法。我不知道如何调用该方法,并让它吐出来自我这边的LessonOne第一次错误沟通的内容,到home.html.erb的路径是app/views/pages/home.html.erb,而不是app/views/lessons/home.html.erb。知道需要做什么样的路由欺骗吗?应用程序中视图的位置与URL中的路径不对应。遵循Rails惯例并将其放入
app/views/lesson/home.html.erb
,您会做得更好。谢谢Soliah。所以我让它工作起来,展示这些经验教训。让这些内容显示在视图/pages/home.html.erb中最有效的方法是什么?最简单的方法是将代码从
lesson\u controller.rb
移动到新的控制器
page\u controller.rb
,将
lesson
的实例重命名为
page
。然后修改路线,改为转到
页面
。你是最好的Soliah。非常感谢。