ActiveScaffold vs DeviseInvitable



在设计资源上使用活动脚手架,使用设计后出现错误

NameError in Admin/users#index
Showing /home/user/.rvm/gems/ruby-1.9.3-p286/gems/active_scaffold-3.2.16/frontends/default/views/_list_record_columns.html.erb where line #6 raised:
uninitialized constant User::InvitedBy
Extracted source (around line #6):
3:   <% column_value = authorized ? get_column_value(record, column) : active_scaffold_config.list.empty_field_text -%>
4: 
5:   <%= content_tag :td, column_attributes(column, record).merge(:class => column_class(column, column_value, record)) do %>
6:     <%= authorized ? render_list_column(column_value, column, record) : column_value %>
7:   <% end %>
8: <% end -%>

ActiveScaffold 3.2.x 不支持多态关联的链接,您可以在invited_by列中调用clear_linkconf.columns[:invited_by].clear_link

我已经在 rails-3.2 分支中禁用了这些链接,但它将在 3.2.18 中。您也可以使用 git 中的 gem(gem 'active_scaffold',:git => 'git://github.com/activescaffold/active_scaffold)来使用支持多态关联链接的主分支。

添加一些可能对某人有帮助的交叉链接:通过这个Github问题:https://github.com/scambra/devise_invitable/issues/247

您可以输入:

filter :email #fixes uninitialized constant User::InvitedBy

在应用程序/管理员/用户.rb 中

(我希望这是可以接受的,并且会帮助某人)

编辑:我也在使用devise_invitable,它被删除或从未正确迁移:

def change
  add_column :users, :invitation_token, :string
  add_column :users, :invitation_created_at, :datetime
  add_column :users, :invitation_sent_at, :datetime
  add_column :users, :invitation_accepted_at, :datetime
  add_column :users, :invitation_limit, :integer
  add_column :users, :invited_by_id, :integer
  add_column :users, :invited_by_type, :string
  add_index :users, :invitation_token, :unique => true
end
# Allow null encrypted_password
change_column :users, :encrypted_password, :string, :null => true
# Allow null password_salt (add it if you are using Devise's encryptable module)
change_column :users, :password_salt, :string, :null => true

通过: https://github.com/scambra/devise_invitable

相关内容

  • 没有找到相关文章

最新更新