2016-05-04 53 views
1

我對Rails很陌生,正在嘗試着手,但遇到了一個問題,我搜索了一遍,似乎很多人都遇到了同樣的問題,但我要麼不明白他們的解決方案,或似乎沒有他們修改的文件,以解決它,Rails生成控制器頁面主頁:幫助器錯誤

我目前使用Windows並通過Git Bash運行所有命令,我有Ruby v2.2.4p230Rails v4.2.5.1,通過混帳擊,如果我去了localhost3000我剛纔運行這些命令

cd ~/Desktop 
rails new pinteresting 
cd pinteresting 
rails generate controller pages home 
rails server 

所以,現在,它給我的基本樣本應用這是很好的,但後來我嘗試訪問的網頁/家,我得到三個錯誤之一的佈局,

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

做工精細,可能是Windows的一個問題。 – danielrsmith

+0

退房:http://stackoverflow.com/questions/27871726/strange-error-in-rails-missing-helper/27909917#27909917 – danielrsmith

+0

什麼是$ HOME的使用Git的Bash shell的價值? [Here](http://markb.co.uk/portable-git-windows-setting-home-environment-variable.html)是正確設置$ HOME的指南,因此它沒有混合使用Windows路徑名Rails正在生成的* nix路徑名。 –

回答

1

謝謝各位的回覆,終於搞清楚了,就像所有其他的答案一樣,它與文件名的大小寫有關,所以我只是直接把它寫到/ c,而不是〜/桌面,然後在application.html.erb剛剛更改的應用程序中的行5和6默認和它的作品......沒有丟失任何文件或做任何命令或任何需要

1

我在我的本地主機上設置了您的項目,我可以訪問http://localhost:3000/pages/home沒有任何問題。

您已經在routes.rb中設置了get 'pages/home'三次,一個就足夠了。

+0

呀貌似不是一個文件的問題,只要是與Rails的Ruby的或不工作我的電腦上,它的文件 – Fuledbyramen

0

您只生成了pages的控制器,併爲其創建了一個名爲home的操作。您還需要一些其他步驟來填寫所有功能。

有一個「快速」的方式來創建整個地段:scaffold。嘗試使用這個命令:

rails generate scaffold pages 

既然你已經創建你的控制器,當詢問是否要覆蓋你的控制器,你可以回答「N」的問題。你也可以回答'N'以解決其他任何問題,特別是如果你已經對任何文件進行了修改,那麼你就不會失去這些修改。

如果你想走遠路周圍,你還需要創建至少其中的一些:

  • 型號
  • 遷移
  • 查看

創建該型號,您可以使用另一個類似的命令:

rails generate model pages 

這將在您的app/models目錄中創建一個page.rb文件。這將映射到存儲每個頁面的詳細信息的數據庫表。

您還可以生成遷移創建pages數據庫表,就像這樣:

rails generate migration CreatePages 

您需要提供pages表結構的基本細節,下面Rails的遷移指南,您可以找到here

最後,你需要爲每個動作視圖。這主要是當前實現中缺少的,因爲生成控制器不會生成相應的視圖文件。

要做到這一點,你會希望在應用程序/視圖/頁目錄下創建一個名爲home.html.erb新文件(如果它不存在)。只要擁有這個文件就足以讓它超越你需要的地步,但你可能會想把它放進去。讓我們顯示時間:

<p>At the tone, it will be: <%= DateTime.now.strftime("%Y-%m-%d %H:%M:%S") %></p> 

這應該給你一個體面的起點,以建立你需要的其餘部分。

當你開始了,不過,要直到你適應了這裏的作品均位於以及如何創建單獨他們使用的腳手架發電機。享受!

+0

我改變了我的計算機周圍的一些文件,但不是應用程序,它的工作,看起來像我不需要做任何這些命令,儘管非常感謝 – Fuledbyramen