【问题标题】:Sorcery external: Can't mass-assign protected attributes外部魔法:无法批量分配受保护的属性
【发布时间】:2014-09-02 20:09:29
【问题描述】:

通过文章调整 gem Sorcery:github.com/NoamB/sorcery/wiki/External。

我已经这样做了,登录后的用户可以创建一个记录并将其附加到从 Amazon AWS 下载到 S3 的图像上。 但是设置后我可以登录,但我不能上传图像。在终端写入错误:

Can't mass-assign protected attributes for Card: review_date, original_text, translated_text, picture

截图:http://monosnap.com/image/OyzrIct0G3uchY3XIUwyJEXxwUrcGU

在控制器的设置中我使用strong_parameters:

private
def card_params
  params.require(:card).permit(:review_date, :original_text, :translated_text, :user_id, :picture, :remove_picture)
end

帮帮我! 如何使用strong_parameters的代码?

附:当然,我已经写了和控制器:https://gist.github.com/windsochi/86ab6f541445896e65f0。 我不知道如何摆脱 attr_accessible 并添加 strong_parameters?

【问题讨论】:

    标签: ruby-on-rails ruby strong-parameters attr-accessible sorcery


    【解决方案1】:

    在 rails 4 中,确保在 newcreate 操作中使用 card_params

    def new
      @card = Card.new(card_params)
    end
    
    def create
      @card = Card.new(card_params)
    end
    
    private
      def card_params
        params.require(:card).permit(:review_date, :original_text, :translated_text, :user_id, :picture, :remove_picture)
      end
    

    如果你在 rails 3,看看https://github.com/rails/strong_parameters

    【讨论】:

      猜你喜欢
      • 2011-09-04
      • 1970-01-01
      • 2012-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多