1

これは 2 つのレベルの問題です。1 つ目の問題で 2 つ目の問題が解決されることを願っています。

  1. 次のようなスクリプトを使用して新しいオブジェクトを保存できるようにしたいと思います

    @file = File.open("/path/to/image.png")
    @user = User.new(:name => "SomeName", :avatar => @file)
    @user.save
    

    しかし悲しいことに、それは応答するだけです

    #<User @values={:name =>"SomeName"}>
    

    だから私は試しました:

    @user = User.new(:name => "SomeName", :avatar => "/path/to/image.png")
    

    しかし、私は得ました:

    CarrierWave::FormNotMultipart: CarrierWave::FormNotMultipart
    

    数千人のユーザーをインポートする必要があるため、スクリプトを機能させる必要があります:S

    新しいユーザーとアバターがHTMLフォームを介して投稿された場​​合にのみ完全に機能しますが、更新時には機能しません...

  2. ユーザーが存在すると、コントローラーで行うだけではアバターを変更できません

    @user.update(params[:user])
    

問題は、キャリアウェーブに必要なすべてを伝えていないことだと思います。

4

1 に答える 1

0

だから、これは古いです。それでも、それが誰かに役立つことを願っています:

@user.update(params[:user])
@user.save

更新後に RUN SAVE を実行します。それでおしまい!

于 2013-03-31T20:49:48.820 に答える