Tôi có ứng dụng Sinatra phản hồi các cuộc gọi api và ứng dụng Rails xử lý các báo cáo và tất cả nội dung đẹp như biểu đồ và trang web. Cả hai cần phải có quyền truy cập vào một nhóm mô hình phổ biến (ví dụ: Tài khoản, Trang web, v.v.)Chia sẻ mã mẫu giữa Sinatra và Rails
Vấn đề của tôi là: làm cách nào để chia sẻ mã hiệu quả giữa hai ứng dụng? Ví dụ: nếu tôi đang chỉnh sửa mô hình Tài khoản trong Sinatra, tôi không muốn phải sao chép cùng các thay đổi trong ứng dụng Rails. Tôi không muốn sử dụng giá đỡ Rails Rack vì hai ứng dụng sẽ nằm trên các cụm riêng biệt.
Tôi đã nhìn thấy gợi ý về StackOverflow về:
- Git Modules
- symlink (sẽ không làm việc với Windows mà đồng nghiệp của tôi sử dụng)
- Rails plugins (tôi nghi ngờ điều này sẽ làm việc với Sinatra)
- của Ruby Gems (tôi nghĩ rằng đây là quá overkill cho chỉ dữ liệu mô hình, nhưng đó chỉ là tôi)
hai ứng dụng một trong các kho khác nhau. Về cơ bản, tôi lần đầu tiên phát triển API, sau đó đưa vào logic Tài khoản cụ thể sau này trong ứng dụng Rails (chủ yếu là do Rails có nhiều thư viện hơn để giúp phát triển những thứ này dễ dàng hơn).
Bạn giải quyết vấn đề này như thế nào?
Các ứng dụng trong cùng một kho lưu trữ hay các ứng dụng khác? –
Họ đang ở trong kho khác nhau :) Bạn có đề nghị họ được trên cùng một kho lưu trữ sau đó? – parasquid
Không, chỉ là tự hỏi khi các tùy chọn thay đổi một chút tùy thuộc. Cá nhân tôi nghĩ rằng một trong hai mô-đun git hoặc đá quý riêng là những lựa chọn tốt nhất. –