簡體   English   中英

Rails 4-在find_by_sql查詢中訪問的表單對象值

[英]Rails 4 - form object values accessed in the find_by_sql query

在Rails 4中,我嘗試訪問find_by_sql中的某些表單對象值。 可能嗎?

部分代碼(在Active Admin類中):

f.has_many :actions, allow_destroy: false, new_record: true do |ff|
     ff.input :description,             
            label: ScenarioStep.where('id=?', ff.object.scenario_step_id).pluck(:name).pop.to_s, 
            hint: Action.find_by_sql("
                     select description from actions where scenario_step_id = #{ff.object.scenario_step_id}").to_s,        
            placeholder: 'test'
     ff.input :action_status, :as => :radio, :collection => Action.statuses
end

當我用等效的ActiveRecord代替find_by_sql中的查詢時,可以訪問ff.object.scenario_step_id的值。

在find_by_sql中使用時,出現錯誤。

這個非常有用: 使用ruby變量使用Rails find_by_sql

這是適合我的解決方案:

hint: Action.find_by_sql(["
     select description from actions where scenario_step_id = ?", ff.object.scenario_step_id]).to_s

您能不能做:

hint: ff.object.actions.pluck(:description)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM