2012-06-30 46 views
1

我目前正在使用Rails 3.2和Active Scaffold進行項目。我創建了一個簡單的控制器爲正是如此編碼我的車型之一:獲得主動腳手架無需工作:標記動作

class StudentsController < ApplicationController 
    before_filter :authenticate_user! 
    active_scaffold :student do |conf| 
    conf.label = "Students" 
    conf.columns = [:last_name, :first_name, :age, :gender, :grade_level, :current_grade] 
    conf.create.columns = [:last_name, :first_name, :age, :gender, :grade_level] 
    conf.update.columns = [:last_name, :first_name, :age, :gender, :grade_level] 
    conf.columns[:current_grade].actions_for_association_links = [:show] 
    conf.columns[:current_grade].sort_by :sql => "grade_level" 
    conf.actions = [:list, :search, :create, :update, :show, :delete] 
    list.columns.exclude :customer_id, :grade_level 
    list.sorting = {:last_name => 'ASC'} 
    end 

    def conditions_for_collection 
    ["customer_id = #{current_user.customer_id}"] 
    end 

    def before_create_save(record) 
    record.customer_id = current_user.customer_id 

    end 
end 

我的問題是這樣的:當我刪除一條記錄,我收到一條「$ record_name無法刪除」的消息。但是,如果我刷新頁面,我發現記錄實際上被刪除了。在檢查我的日誌文件,我看到一個錯誤信息,指出:

undefined method `as_marked=' for #<Student:0x0000000554c1d0> 

我嘗試添加:標記我的操作列表,並且不解決問題。不過,我不希望標記/複選框列出現在我的列表中。

任何想法?這是我第一次使用活動腳手架,而且我覺得這很煩人。

回答

1

我發現,如果我添加這我的模型:

def as_marked= (x) 
    end 

它的工作原理,不顯示在我的列表中的標記/複選框列。

爲了記錄,我討厭這個解決方案:)如果我想出更好的東西,我會確保回來並更新這個答案。