如何在 Rails 中将字符串变形为模型名称



有一个http://localhost:3000/me/posts/new?type=note

我想通过控制器中type参数创建一个模型,我有一个名为 Post::Note 的模型。

那么如何通过参数[:type]字符串创建它呢?

试试这个:

note_klass = params[:type].camelize.constantize
note = note_klass.new

回复:问题编辑

如果您的Note类不是全局的,则可以使用以下命令:

const_name = params[:type].camelize
note_klass = Post.const_get(const_name)

相关内容

  • 没有找到相关文章

最新更新