在Rails查找函数中使用非数字标识符



在许多Rails示例中,我看到

在使用ModelName.find(:id)时,假设每个模型都有一个名为:symbol的唯一字符串属性,我如何设置模型以使find(:symbol)工作?我必须自己实现搜索算法吗?

您可以使用

 ModelName.find_by_symbol("uniquestring")

有关Rails动态查找程序的更多信息

您可能想尝试"find_by_yoursymbol"

ModelName.find_by_yoursymbol("symbol value")

我只是用它来检查一个记录是否存在,如果不存在就创建它。

Spree::MailMethod.create(:environment => "test") unless Spree::MailMethod.find_by_environment("test").present?

最新更新