2010-12-13 37 views
5

Tôi là một người mới ở Rails và cảm thấy tôi đang thiếu một mẹo ở đây. Tôi đang cố thêm trường số điện thoại vào mô hình Người dùng do người dùng tạo của tôi, nhưng tôi đang gặp vấn đề với việc lưu nó. Tôi đã thực hiện rails generate devise:views, đã cập nhật tệp edit.html.erb để thêm vào trường: phone_number và tạo di chuyển để thêm trường số điện thoại vào mô hình. Nó không tiết kiệm cho mô hình bởi vì (như tôi hiểu nó) Tôi không thể cập nhật bộ điều khiển để bao gồm các lĩnh vực mới.Thêm trường vào Mô hình người dùng trong Devise

Tôi có cần tạo một app/controllers/users/registration_controller.rb được xác định bằng class Users::RegistrationsController < Devise::RegistrationsController và sau đó khỉ vá phương thức cập nhật? Hoặc là có một cách đơn giản hơn/thanh lịch/dễ dàng hơn?

Tôi nhận thấy có một vài câu hỏi khác liên quan đến điều này trên trang web, nhưng một câu hỏi không cung cấp câu trả lời hữu ích và câu trả lời khác chỉ đơn giản là chi tiết những gì tôi đề cập ở đây. Còn gì nữa không?

Cảm ơn.

Trả lời

11

Sau khi bạn thêm trường vào cơ sở dữ liệu của mình thông qua quá trình di chuyển, bạn cũng sẽ cần phải thêm trường đó vào danh sách thuộc tính có thể truy cập trong Mô hình người dùng của mình. Danh sách attr_accessible của bạn sẽ giống như sau đây tùy thuộc vào những gì bạn đang sử dụng mô-đun.

attr_accessible :email, :password, :password_confirmation, :phone_number 
+0

Đúng vậy! Tôi biết tôi đang thiếu một cái gì đó ... –

+0

Trong Rails 4, hãy nhớ sử dụng các thông số mạnh để thay thế. ví dụ. 'params.require (: user) .permit (: email,: mật khẩu,: password_confirmation,: phone_number)' – Nateowami

Các vấn đề liên quan