小编My *_*yto的帖子

模型关联问题:NoMethodError: #<Hash...> 的未定义方法“扩展”

我目前正在按照升级指南将 Rails 5.2 应用程序升级到 Rails 6.0。

一切似乎都工作得很好,直到我的用户类之一(标签或艺术家)与链接模型交互时遇到错误。

当我尝试以艺术家或厂牌身份注册时,当我需要定义指向用户社交媒体或网站的链接时,我收到以下错误:

Completed 500 Internal Server Error in 139ms (ActiveRecord: 7.3ms | Allocations: 14518)

    NoMethodError - undefined method `extensions' for #<Hash:0x000000000bdd4ec8>
    Did you mean?  extend:
      app/controllers/label/personal_informations_controller.rb:8:in `edit'
Run Code Online (Sandbox Code Playgroud)

这是我的个人信息控制器:(错误位于第 8 行,我将对其进行标记,以便清楚地显示)

class Label::PersonalInformationsController < LabelController
  layout "signup"
  skip_before_action :ensure_approved

  def edit
    prepare_country_options
    @label = current_label
    @label.links.build(links_attributes) #***ERROR OCCURS HERE***#
  end

  def update
    @label = current_label
    if @label.update_attributes(label_params)
      redirect_to edit_label_genres_path
    else
      update_error
    end
  end

  private

  def update_error
    prepare_country_options
    @label.links.build(links_attributes)
    render :edit
  end

  def label_params
    params.require(:label).permit(:logo, …
Run Code Online (Sandbox Code Playgroud)

controller model ruby-on-rails ruby-on-rails-6

9
推荐指数
2
解决办法
1437
查看次数