Chúng tôi đã tạo ra một mô hình người dùng trong việc bắt đầu dự án, nhưng bây giờ (một số di chuyển sau này) chúng tôi muốn sử dụng đá quý. Có thể thêm suy nghĩ nếu mô hình người dùng và bảng đã tồn tại không? Nghĩa là, có thể thay đổi những gì đã được thực hiện hay chúng ta phải bắt đầu lại từ đầu?Có thể thêm ý tưởng, nếu mô hình người dùng đã tồn tại?
Trả lời
Tôi đã thực hiện. Đó là một chút đau đớn nhưng Devise xứng đáng với nó. Tạo một ứng dụng giả và thực hiện di chuyển. Sau đó, hãy xem schema.rb và viết một số di chuyển thực hiện tương tự với mô hình người dùng hiện tại của bạn.
Hoặc bạn có thể đọc qua nguồn và tìm hiểu những nơi như "database_authenticateable" được xác định. Bạn nên bắt đầu here.
Cavert Coder, nhưng:
(Lưu ý,
này không di chuyển ": có thể khóa" bởi vì tôi không quan tâm về điều đó khi tôi đã viết nó
này hiện nay bao gồm: có thể khóa vì MattSlay chăm sóc nhiều hơn tôi đã làm :). Ngoài ra, bạn cần di chuyển mật khẩu người dùng của mình vào trường mật khẩu được mã hóa. Cuối cùng, nó có thể không làm việc cho bạn. Xin lỗi)
class AddDevise < ActiveRecord::Migration
def self.up
null = false
default = ""
add_column :users, :encrypted_password, :string, :null => null, :default => default, :limit => 128
add_column :users, :password_salt, :string
add_column :users, :authentication_token, :string
add_column :users, :confirmation_token, :string
add_column :users, :confirmed_at, :datetime
add_column :users, :confirmation_sent_at, :datetime
add_column :users, :reset_password_token, :string
add_column :users, :remember_token, :string
add_column :users, :remember_created_at, :datetime
add_column :users, :sign_in_count, :integer, :default => 0
add_column :users, :current_sign_in_at, :datetime
add_column :users, :last_sign_in_at, :datetime
add_column :users, :current_sign_in_ip, :string
add_column :users, :last_sign_in_ip, :string
#:lockable fields contributed by MattSlay
add_column :users, :failed_attempts, :integer, :default => 0
add_column :users, :unlock_token, :string
add_column :users, :locked_at, :datetime
end
def self.down
remove_column :users, :encrypted_password
remove_column :users, :password_salt
remove_column :users, :authentication_token
remove_column :users, :confirmation_token
remove_column :users, :confirmed_at
remove_column :users, :confirmation_sent_at
remove_column :users, :reset_password_token
remove_column :users, :remember_token
remove_column :users, :remember_created_at
remove_column :users, :sign_in_count
remove_column :users, :current_sign_in_at
remove_column :users, :last_sign_in_at
remove_column :users, :current_sign_in_ip
remove_column :users, :last_sign_in_ip
remove_column :users, :failed_attempts
remove_column :users, :unlock_token
remove_column :users, :locked_at
end
end
Ngoài các danh sách đó Aquarion cung cấp, tôi nghĩ rằng tôi đã tìm thấy ba lĩnh vực mà bạn cần nếu bạn muốn thực hiện:. Tùy chọn có thể khóa trên mô hình tài:
add_column :users, :failed_attempts, :integer, :default => 0
add_column :users, :unlock_token, :string
add_column :users, :locked_at, :datetime
- 1. Tạo mô hình Django hoặc cập nhật nếu tồn tại
- 2. Lỗi cú pháp với mô phỏng "tạo người dùng nếu không tồn tại"
- 3. mysql tạo người dùng nếu không tồn tại
- 4. Rake bị hủy bỏ ... bảng 'người dùng' đã tồn tại
- 5. Kiểm tra xem người dùng đã tồn tại trong drupal
- 6. Thêm trường vào Mô hình người dùng trong Devise
- 7. Rails 3 - Active_admin có thể sử dụng mô hình người dùng hiện tại không?
- 8. kiểm tra nếu giá trị đã tồn tại
- 9. Kiểm tra xem người dùng mysql có tồn tại
- 10. Nếu tồn tại hoặc tồn tại?
- 11. activerecord làm mô hình, đây có phải là một ý tưởng hay không?
- 12. Hợp nhất người dùng ActiveAdmin với mô hình người dùng hiện tại
- 13. Mô hình mạng nơron này có tồn tại không?
- 14. Mô hình CouchDB cho nhiều người dùng
- 15. Lỗi mô hình người dùng tùy chỉnh
- 16. Ý tưởng xử lý hình ảnh
- 17. Ý tưởng BOT/Spider Trap
- 18. Dấu nháy đơn trong URL. Ý tưởng tốt hay ý tưởng tồi? Và tại sao?
- 19. PHP nếu có nhiều biến tồn tại
- 20. Không thể tạo siêu người dùng với mô hình người dùng tùy chỉnh trong Django 1,5
- 21. MSMQ có phải là ý tưởng hay không
- 22. WPF đã hợp nhất các từ điển tài nguyên trong mọi điều khiển người dùng - ý tưởng tồi?
- 23. Quy mô thiếu hiểu biết có thể tồn tại?
- 24. MVC3 + Cách lấy tên người dùng hiện tại đã đăng nhập của người dùng
- 25. cài đặt người dùng mô hình trong django
- 26. Ý tưởng dự án Asp.net?
- 27. CSS lớn có phải là một ý tưởng hay không?
- 28. Xương sống: Cách xác thực xem Mô hình đã tồn tại trong Bộ sưu tập chưa?
- 29. Nếu một khóa không tồn tại trong ModelState, làm thế nào tôi có thể thêm nó? aspnetmvc1
- 30. Tạo một thư mục nếu nó không tồn tại - "Item đã tồn tại"
Đã làm cho tôi! Bây giờ, phần này là gì: có thể khóa được? Tôi xem xét việc di chuyển Người dùng Devise và tôi chỉ thấy các trường bạn đã liệt kê. Tôi có thể tìm hiểu thêm về điều này ở đâu: điều có thể khóa? Tôi muốn triển khai lược đồ người dùng Devise đầy đủ. – MattSlay
Ahh, tôi nghĩ rằng tôi đã tìm thấy các trường bắt buộc: có thể khóa. Tôi đã đăng chúng trong một câu trả lời riêng biệt bên dưới. – MattSlay
Ah, tuyệt. Tôi đã tích hợp với một tệp lược đồ lớn ở trên. Cảm ơn bạn. – Aquarion