首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Ruby on Rails中,有比使用eval()动态访问这个jsonb更好的方法吗?

在Ruby on Rails中,可以使用public_send方法来动态访问jsonb,而不是使用eval()方法。public_send方法可以调用对象的公共方法,并传递参数。

下面是使用public_send方法来动态访问jsonb的示例代码:

代码语言:txt
复制
# 假设有一个名为user的模型,其中有一个名为data的jsonb字段

# 获取data字段的值
user.data

# 设置data字段的值
user.data = { key: 'value' }

# 动态访问data字段的值
key = 'key'
user.public_send("data_#{key}") # 等同于 user.data_key

# 动态设置data字段的值
key = 'key'
value = 'new value'
user.public_send("data_#{key}=", value) # 等同于 user.data_key = value

使用public_send方法可以避免使用eval()方法带来的潜在安全风险,同时也更加清晰和可读。

在腾讯云的产品中,与Ruby on Rails开发相关的产品包括云服务器、云数据库、云存储等。您可以根据具体需求选择适合的产品。以下是腾讯云相关产品的介绍链接:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券