我对Rails很新,我正在努力开始但是遇到了问题,我已经四处搜索了,似乎很多人遇到了同样的问题,但我要么不要# 39;了解他们的解决方案或者似乎没有他们改变的文件来修复它,
我目前正在使用Windows并通过Git Bash运行所有命令,我有Ruby v2.2.4p230
和Rails v4.2.5.1
,通过Git Bash,我刚刚运行了这些命令
cd ~/Desktop
rails new pinteresting
cd pinteresting
rails generate controller pages home
rails server
所以现在如果我去localhost3000
,它给了我应用程序的基本样本布局,这很好,但后来我尝试访问页面/ home,我得到三个错误之一,
Missing helper file helpers/c:/users/acer_pc/desktop/pinteresting/app/helpers/application_helper.rb_helper.rb
Missing helper file helpers/c:/users/acer_pc/desktop/pinteresting/app/helpers/pages_helper.rb_helper.rb
Missing template pages/home, application/home with {:locale=>[:en], :formats=>[:html], :variants=>[], :handlers=>[:erb, :builder, :raw, :ruby, :coffee, :jbuilder]}. Searched in: * "c:/Users/Acer-PC/desktop/pinteresting/app/views"
如果有帮助,这是文件夹https://github.com/Fuledbyramen/pinteresting
答案 0 :(得分:1)
我在本地主机上设置了您的项目,我可以毫无问题地访问http://localhost:3000/pages/home。
你已经在routes.rb中设置了get 'pages/home'
三次,一次就够了。
答案 1 :(得分:1)
感谢大家的回复,终于想出来了,就像所有其他的SO答案一样,它与文件名的大小写有关,我无法弄清楚,所以我只是直接写了to / c而不是〜/ desktop,然后在application.html.erb中将第5行和第6行中的应用程序更改为默认值并且它可以正常运行...没有丢失任何文件或者需要执行任何命令或任何事情
答案 2 :(得分:0)
您只为pages
生成了控制器,并为其创建了一个名为home
的操作。您还需要一些额外的步骤来填写所有功能。
有一种“快速”方式来创建整个批次:scaffold
。尝试使用此命令:
rails generate scaffold pages
由于您已经创建了控制器,当它询问您是否要覆盖控制器时,您可以回答问题的“N”。您可以回答“N”以及其他任何问题,特别是如果您已经对任何文件进行了更改,那么您就不会丢失这些更改。
如果你想走很远的路,你还需要创建至少其中一些:
要创建模型,您可以使用另一个类似的命令:
rails generate model pages
这将在page.rb
目录中创建app/models
文件。这将映射到存储每个页面详细信息的数据库表。
您还可以生成迁移以创建pages
数据库表,如下所示:
rails generate migration CreatePages
您需要按照Rails迁移准则提供pages
表格结构的基本详细信息,您可以找到here。
最后,您需要为每个操作创建视图。这主要是当前实现中缺少的,因为生成控制器不会生成相应的视图文件。
为此,您需要在app / views / pages目录中创建一个名为home.html.erb
的新文件(如果它尚不存在)。简单地拥有这个文件就足以让它超越你需要的点,但你可能想要把它放进去。让我们显示时间:
<p>At the tone, it will be: <%= DateTime.now.strftime("%Y-%m-%d %H:%M:%S") %></p>
这应该为你提供一个不错的起点,以构建你需要的其余部分。
然而,当您开始时,尝试使用脚手架发生器,直到您对所有部件的位置以及如何单独创建它们感到满意为止。并享受!