【发布时间】:2015-02-05 04:32:25
【问题描述】:
我特别需要能够从代码中调用 Rails 命令(即发生某些操作时)。我需要使用特定字段(将由表单确定)创建模型并最终运行创建的迁移。
所以我的这个表单将创建所有字段,然后创建一个具有特定字段(表和列)的模型
那么,有没有办法从控制器/ruby 代码中调用 rails generate model NAME [field[:type][:index] field[:type] 和 bundle exec rake db:migrate?
【问题讨论】:
-
你为什么有这个需求?我问是因为这听起来很成问题,也许有更好的方法来实现同样的目标。
-
嗯,是的,也许我的解决方案有点太极端了。我需要实现的是:使用自己指定的信息字段创建多个类别(即汽车与宠物有不同的字段),一旦创建了这样的类别,我需要的命令将被调用,每个类别的新表将做出来。我知道我可以将所有字段存储为某种字符串,然后对其进行处理以正确显示它,但我需要为我的 Web 应用程序提供高级搜索功能,并且为每个类别创建单独的表似乎是实现它的最佳方式。我真的很想听听这个的替代品
-
我肯定会寻求另一种解决方案 - 根据您的需要有很多潜在的解决方案 - 也许是 Rails
serialize,或 Postgres hstore,或者像category_fields这样的单独表。在生产中生成模型和迁移似乎是一个痛苦的世界。我建议发布另一个问题,说明您要解决的问题和限制(例如,提供有关您的搜索需求的更多详细信息),我相信很多人都会有好的想法。 -
我在这里问了另一个问题stackoverflow.com/questions/27342851/… ...问题是类别将在管理中创建,并且会非常谨慎地使用此功能。感谢您对我新创建的问题的意见。
标签: ruby-on-rails ruby ruby-on-rails-4