簡體   English   中英

Rails Admin和印象派寶石之間的沖突

[英]Conflict between Rails Admin and Impressionist gems

我正在使用Impressionist和Rails Admin寶石的最新版本,並想知道是否有人能夠揭示我正在經歷的令人討厭的沖突。 問題大致記錄在這里 - https://github.com/sferik/rails_admin/issues/1315 ,但模糊描述的解決方案對我不起作用。 當我的清單模型中有is_impressionable行時,在使用rails s啟動Rails服務器時出錯:

    ...rvm/gems/ruby-2.0.0-p247/gems/activerecord-4.0.2/lib/active_record/dynamic_matchers.rb:22:in `method_missing': undefined local variable or method `is_impressionable' for Listing(no database connection):Class (NameError)

如果我首先啟動服務器,然后添加'is_impressionable'行,一切正常,所以問題只發生在初始化期間。 我不完全理解初始化過程,所以我不確定如何讓它工作。

我已經嘗試將所有我的rails_admin模型配置選項移動到它們各自的模型,而不是在初始化程序中,它們沒有任何效果。 我的初始值設定項中還有以下行:

    config.included_models = [Listing,ListingImage,AllOtherModelsHere...]

我曾試圖圍繞這些模型的名稱,這會導致下面的錯誤添加單引號,因為在GitHub的問題描述在這里

    [RailsAdmin] Could not load model Listing, assuming model is non existing. (undefined local variable or method `is_impressionable' for Listing(no database connection):Class)

還有什么想法我可以嘗試讓這些寶石一起工作嗎? 每次我想重新啟動服務器或生成遷移時,我都不想刪除is_impressionable行...

不確定我是否有同樣的問題,但我會發布對我有用的東西,萬一有人也在努力解決這個問題:

我正在使用rails 4.2.0的ruby 2.1.5項目以及其他寶石我正在使用rails admin。 我試圖設置這個問題時遇到了幾個奇怪的問題。 例如,如果我在我的一個模型中添加了is_impressionable調用,由於某種原因,該文件的執行在那里停止,我開始得到奇怪的錯誤,就像在is_impressionable下面聲明的任何方法失敗並且未定義錯誤一樣。 所以我最終做的是:

class MyModel < ActiveRecord::Base
  include Impressionist::IsImpressionable
  is_impressionable
end

所以這解決了我的問題,現在我可以按預期訪問@my_model_instance.impression_count

我在初始化程序'Klass'.constantize Klass每次出現都更改為'Klass'.constantize

暫無
暫無

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

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