2

我知道以前有人问过这个问题,并且我发现了许多与我的问题相似的问题,但是答案似乎是相同的“错字”,但是我一次又一次地查看了我的代码并且无法指出错误/错字,我开始认为它不仅仅是一个错字:这是我的代码,文件名的拼写准确:

我使用以下迁移创建了表:

015_create_site_configurations.rb

class CreateSiteConfigurations < ActiveRecord::Migration

  def self.up
    create_table "site_configurations" do |t|
      t.column :config_type,    :string
      t.column :value,          :string

    end

  end

  def self.down
    drop_table "site_configurations"
  end
end

这个类的控制器

manage_site_configurations_controller.rb

class ManageSiteConfigurationsController < AdminController

  active_scaffold :site_configurations do |config|
    config.columns = [:config_type, :value]
    config.create.columns = [:config_type, :value]
  end

end

因为我将它用于 ActiveScaffold,所以这里是application.rb的一个片段

  def self.active_scaffold_controller_for(klass)
    return ManageUsersController if klass == User
    return ManagePagesController if klass == Page
    return ManageSiteConfigurationsController if klass == SiteConfiguration
    return "#{klass}ScaffoldController".constantize rescue super
  end

这就是我用于路线的

resources :manage_site_configurations do as_routes end

如果有人能指出错误,我将不胜感激。

4

1 回答 1

0

你有迁移,但你有在 app/models/ 中生成的模型吗

rails g active_scaffold Model attr1:type attr2:type
rake db:migrate

否则可能是这样

active_scaffold :site_configurations do |config|

应该

active_scaffold :site_configuration do |config|

至少在https://github.com/activescaffold/active_scaffold/wiki/getting-started的示例中,他们没有将 ':company' 复数

active_scaffold :company do |config|
  config.label = "Customers"
  config.columns = [:name, :phone, :company_type, :comments]
  list.columns.exclude :comments
  list.sorting = {:name => 'ASC'}
  columns[:phone].label = "Phone #"
  columns[:phone].description = "(Format: ###-###-####)"
end
于 2012-08-06T22:48:26.070 回答