簡體   English   中英

nil的未定義方法`gsub':NilClass讓我在軌道上的紅寶石中瘋狂

[英]Undefined method `gsub' for nil:NilClass driving me insane in ruby on rails

我不知道到底是什么,但我正在嘗試使用GSUB,然后我決定不再使用它,所以將我的link_to參數更改回:

<%= link_to root_url(@user.username), @user.username %>

現在我不斷收到這個錯誤:nil的未定義方法`gsub':NilClass

當我從我的show文件中刪除整行時,一切都很好。

或者如果我改成它:

<%= link_to root_url(:user => @user.username), @user.username %>

就像它已經混淆了一些如何並且認為我仍然在使用gsub方法時,我不是。 我已經測試或url幫助程序,如login,password_reset等,他們都工作正常。 它似乎只是用root_url來做這件事。

在我遇到這個問題之前,我還從昨天克隆了我的網站回購並猜猜是什么? 同樣的錯誤..

我從未對編程感到沮喪。

有什么我可以清楚的嗎? 我已經嘗試清除tmp文件夾中的所有內容仍然沒有運氣。

路線:

Mysite::Application.routes.draw do

  resources :users
  resources :sessions
  resources :passwords


  root :to                   => "users#new"
  match 'success'            => "users#success"
  match 'login'              => "sessions#new"
  match 'logout'             => "sessions#destroy"
  match 'reset_password'     => "passwords#new"
  match 'setup_new_password' => "passwords#edit"
  match ':username'          => "users#show"

end

我認為你有關於link_to倒退的論點。 它應該是:

link_to(label, url)

gsub方法可以由Rails內部更深層次的東西觸發。 當您收到錯誤時,通常會得到一個堆棧跟蹤,有助於解釋導致失敗的事件鏈。

這應該可以解決問題,因為root_url(和root_path)沒有參數:

<%= link_to @user.username, root_url %>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM