Câu hỏi Noob dành cho Ruby on Rails- đây là ví dụ về tình huống của tôi: Nếu tôi có mẫu circle
và thuộc tính radius
, tôi tính toán ở đâu cho circumference
? Đây có phải là trong mô hình hoặc bộ điều khiển, và nó trông như thế nào? circumference
sẽ cần truy cập được trong số views
của tôi.Đường ray - Tôi nên tính các thuộc tính bắt nguồn ở đâu?
Ngoài ra, tôi có đúng khi nghĩ rằng tôi không cần phải tạo một thuộc tính là một phần của mô hình/cơ sở dữ liệu của tôi vì nó có thể được lấy từ người dùng nhập radius
?
Trở lại điểm mặc dù, tôi nên làm rõ với giả định thứ hai của mình - tôi đã tìm ra các phép tính của mình trong 'app/models/circle.rb', nhưng tôi có thể sử dụng' circumference' làm đơn giản biến (ví dụ: '@ circumference' instance variable) hoặc tôi có cần thêm nó như là một phần tử của bảng cơ sở dữ liệu cho' circle' không? – Nick
Nếu bạn thêm 'attr' này vào bảng của mình thì bạn cần mã bổ sung để đảm bảo rằng các thay đổi đối với' radius' của bạn cũng sau đó kích hoạt tính toán lại 'chu vi' của bạn. Điều này đòi hỏi 'def' của thuộc tính được xử lý hơi khác so với câu trả lời này. –
'before_save: recalculate_fields' –