无法访问此地址:127.0.0.1/users/sign_up。 当我转到页面时,出现以下错误:
OCIError: ORA-01722: invalid number: SELECT * FROM (SELECT "BLACKROW"."V_B_USERS".* FROM "BLACKROW"."V_B_USERS" WHERE (USER_ID = 'sign_up') ORDER BY "BLACKROW"."V_L_USERS"."USER_ID" ASC ) WHERE ROWNUM <= 1
在此操作上有一个错误:
# Use callbacks to share common setup or constraints between actions.
def set_user
@user = User.where('USER_ID = ?', params[:id]).first
end
怎么了?如何解决这个问题呢?
答案 0 :(得分:0)
... WHERE (USER_ID = 'sign_up')
&#34; ID&#34;通常(再次:通常)表示NUMBER。如果您查看V_L_USERS表,它会说什么 - USER_ID数据类型是什么?如果它确实是一个NUMBER,那么使用字符串(&#39; sign_up&#39;)将会引发INVALID NUMBER错误。
答案 1 :(得分:0)
您的ID参数似乎存在问题。
旁注:找到用户的更简洁方法是使用Users.find(params [:id])