Helpex - Trao đổi & giúp đỡ Đăng nhập
5

Tôi là một người dùng Ruby on Rails mới và có một câu hỏi. Tôi có ý tưởng về việc tôi muốn Cơ sở dữ liệu người dùng của mình trông như thế nào nhưng phân vân không biết có nên thêm giá trị bổ sung vào đó hay không. Về cơ bản, tôi cần một biến để báo hiệu cho tất cả người dùng rằng có thể an toàn khi tiến hành một hành động nhất định. Biến này sẽ tồn tại liên tục trên tất cả người dùng và phải hiển thị cho tất cả người dùng, nhưng tôi muốn máy chủ cũng có thể thay đổi biến này. Khi lập trình bằng các ngôn ngữ khác, tôi sẽ sử dụng một biến toàn cục, vì vậy tôi muốn kiểm tra xem đó có phải là trường hợp ở đây hay không. Nếu vậy, đây có phải là cách tốt nhất để thực hiện nó: Biến toàn cầu trên toàn trang trong Ruby on Rails . Ngoài ra, tôi sẽ cập nhật các biến toàn cục như thế nào. Cảm ơn vì bất kì sự giúp đỡ!

5 hữu ích 0 bình luận 4.0k xem chia sẻ
7

Một biến toàn cục không phù hợp với nhu cầu của bạn. Nó không trải rộng trên tất cả các quy trình Ruby. Nếu máy chủ web của bạn tạo ra 5 quy trình ruby ​​để xử lý 5 yêu cầu cùng một lúc, thì biến được xác định trong quy trình đầu tiên sẽ không hiển thị với những người khác.

Có các giải pháp khác có sẵn. Bạn có thể sử dụng cơ sở dữ liệu và lưu trữ cờ / thông tin trên cơ sở dữ liệu. Nếu không, bạn có thể sử dụng một tệp và lưu trữ giá trị trong tệp. Giải pháp tốt nhất sẽ là nguồn dữ liệu được chia sẻ trong bộ nhớ, chẳng hạn như memcached hoặc Redis.

7 hữu ích 1 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ ruby-on-rails ruby global-variables , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm

loading