2011-11-01 29 views
6

Tôi đang phát triển 2 ứng dụng cho 2 khách hàng riêng biệt và thứ 3 cho bản thân mình. Tất cả 3 ứng dụng sẽ có sổ địa chỉ, gửi email và xác thực người dùng. Cuối cùng, tôi muốn các ứng dụng được tạo ra "mô-đun" để tôi có thể thêm (hoặc loại bỏ) các mô-đun khi chúng cần thiết.Rails 3.1 - Phát triển với Động cơ có thể lắp

Tôi đã xem Mountable Engines Railscast và có vẻ như những gì tôi cần, nhưng tôi vẫn còn chưa rõ ràng về những điều sau đây:

  1. Làm thế nào để bạn phát triển từng module động cơ (xác thực người dùng, gửi email, sổ địa chỉ) riêng rẽ mà không một ứng dụng cơ sở chung?
  2. Làm thế nào để bạn phát triển mô-đun sổ địa chỉ khi nó yêu cầu xác thực người dùng, đó là một mô-đun riêng biệt hoàn toàn?

Tôi đoán rằng bạn phát triển xác thực người dùng trước và bao gồm trong ứng dụng giả của mô-đun động cơ, nhưng tôi đang nhầm lẫn với không gian tên của động cơ.

Có thể hữu ích khi lưu ý rằng tôi đến từ nền C# và tôi mới phát triển web.

Trả lời

2

Mọi người đã viết xác thực và gửi email plugin. Đối với hầu hết các ứng dụng, công việc duy nhất còn lại được thực hiện cho các mô-đun đó là tùy chỉnh.

Bạn có thể muốn viết một công cụ để chia sẻ một số tùy chỉnh và chia sẻ một số chức năng của sổ địa chỉ. Trong trường hợp đó, bạn có thể xem xét việc phát triển một ứng dụng ví dụ có ít mã tùy chỉnh nhất có thể để xác định rõ ràng api sổ địa chỉ.

+0

Khi bạn đặt nó như thế nó nghe có vẻ đơn giản: P Bạn có một điểm, mặc dù, và tất cả các nghiên cứu của tôi đã bắt đầu chỉ vào đó. Tôi nên tập trung vào việc có một API phong nha chạy cho mỗi mô-đun. Nếu tôi bao gồm plugin với "gem 'mypath'" trong Gemfile của tôi và tôi thực hiện thay đổi trong plugin, bạn có biết liệu thay đổi đó có được tự động cập nhật trong ứng dụng được bao gồm trong không? –

+1

Tôi nghĩ rằng bạn chỉ vào một con đường nó sẽ nhận các thay đổi khi bạn thực hiện chúng (ít nhất là như xa như bundler là có liên quan) nhưng tôi sẽ kiểm tra lại. Tuy nhiên, vì mã tải/tải lại đường ray, bạn sẽ thường phải khởi động lại máy chủ đường ray để có thể nhận các thay đổi trừ khi bạn thực hiện một số thay đổi cấu hình. –

+0

Cảm ơn. Điều đó có ý nghĩa. Ít nhất bây giờ tôi có một nơi để bắt đầu nghiên cứu thêm :) –

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