【问题标题】:Rails Scaffold based on existing model not working基于现有模型的 Rails Scaffold 不起作用
【发布时间】:2013-02-25 21:57:05
【问题描述】:

我想使用scaffold_controller基于现有模型生成脚手架。

rails generate scaffold_controller NAME

我只得到空视图,我没有得到迁移中定义的字段。不知道到底发生了什么,因为我曾经这样做过,而且它在以前的项目中一直都在工作。

我使用的是 Rails 3.2.12,这个功能是否不再可用?

感谢您的帮助。

【问题讨论】:

    标签: ruby-on-rails-3 scaffolding


    【解决方案1】:

    如果您想在视图中包含属性,您可以将它们传递给generate scaffold_controller 命令,如下所示:

    generate scaffold_controller <YOUR_MODEL_NAME> attribute1 attribute2 attribute3
    

    然后它将创建仅包含这些属性的视图。

    【讨论】:

      【解决方案2】:

      经过进一步调查,我认为问题是特定于我的 Rails 安装,不确定是什么,但如果你遇到这个问题,这是我找到的解决方法,但需要 twitter 引导:

      rails generate scaffold_controller <YOUR_MODEL_NAME>
      rails g bootstrap:themed <YOUR_MODEL_NAME> -f
      

      希望对你有帮助。

      【讨论】:

        【解决方案3】:

        您的示例使用 scaffold_controller,就好像您希望在视图中创建和显示模型一样,您应该只使用脚手架。对于您的代码示例:

        rails generate scaffold_controller NAME
        

        这应该变成:

        rails generate scaffold NAME
        

        你需要指定你的属性然后运行

        rake db:migrate
        

        【讨论】:

        • 嗯,是的,我也这样做了,并且使用了 --skip 选项,因此它会跳过模型和迁移,否则它会失败,这相当于scaffold_controller。
        • 这个用于以前的项目,但现在不行了,不知道为什么!
        • 这对你有用吗?您现在可以看到视图中的字段了吗?
        • 不,它没有,我不知道我的 Rails 设置有什么问题,但我找到了解决方法。我做了 rails g bootstrap:themed products -f。在完成正常的空脚手架并创建字段之后。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-09
        • 1970-01-01
        • 2017-05-23
        • 2018-05-22
        • 1970-01-01
        相关资源
        最近更新 更多