01.29 全棧營作業:新增靜態頁面

我想做很簡單的靜態頁面,從navbar連結過去。像66K JOB 裡的關於我們

我想的步驟是這樣的

  1. 新增資料夾
  2. 新增頁面
  3. navbar 連結到此頁面
  4. 新增controller
  5. 在controller 裡面定義要連的頁面
  6. 在routes.rb 裡面定義要連到這個controller

但遇到下面這個錯誤

ricahsu@Ericade-MBP:~/job-listing-7% rails s
=> Booting Puma
=> Rails 5.0.0 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
Exiting
/Users/ericahsu/.rvm/gems/ruby-2.3.1/gems/actionpack-5.0.0/lib/action_dispatch/routing/mapper.rb:872:in `controller': wrong number of arguments (given 0, expected 1..2) (ArgumentError)

以下分別是routes.rb, pages_controller.rb, _navbar.html.rb
或者去git hub裡面看


後來發現我犯了三個錯誤

  1. routes.rb 裡面用到中文標點符號 get ‘pages/about' 改成 get 'pages/about'
  2. pages_controller.rb 裡面的定義寫錯_ 錯誤的是
    def about
    @pages = Pages.about
    end
    
    正確的是
    def about
    end
    
  3. routes.rb 裡面要有每頁的指向
    routes.rb
    get 'pages/about'
    get 'pages/exam'
    ...
    
    從想頁面結構、找範本、試作、錯誤、改錯。。。以上花了我五個小時。(淚奔) 最後才發現這裡有教材: http://forum.qzy.camp/t/3-13/120/8

Comments

comments powered by Disqus