加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何通过curl发布数组值?

发布时间:2020-12-16 19:38:28 所属栏目:百科 来源:网络整理
导读:我喜欢测试API后端,其设计如下例所示: http://localhost:3000/api/v1/shops/1.json JSON响应: { id: 1,name: "Supermarket",products: [ "fruit","eggs" ]} 以下是相应的型号: # app/models/shop.rbclass Shop ActiveRecord::Base extend Enumerize attr_
我喜欢测试API后端,其设计如下例所示:
http://localhost:3000/api/v1/shops/1.json

JSON响应:

{
  id: 1,name: "Supermarket",products: [
    "fruit","eggs"
  ]
}

以下是相应的型号:

# app/models/shop.rb
class Shop < ActiveRecord::Base
  extend Enumerize
  attr_accessible :name,:products

  serialize :products,Array
  enumerize :products,in: %w{fruit meat eggs},multiple: true

  resourcify

  validates :name,presence: true,length: { in: 5..50 }    
  validates :products,presence: true
end

我想使用curl来测试创建和更新一个条目.因此,我使用以下命令:

创建:

$curl -X POST http://localhost:3000/api/v1/shops.json -d 
  "shop[name]=Supermarket&shop[products]=fruit,eggs&auth_token=a1b2c3d4"

更新:

$curl -X PUT http://localhost:3000/api/v1/shops/1.json -d 
  "shop[name]=Supermarket&&shop[products]=fruit,eggs&auth_token=a1b2c3d4"

产品的价值需要作为数组提交.当我运行以上命令时,会返回以下消息:

{"errors":{"products":["is invalid"]}

我需要如何编写产品阵列的值,使其与卷曲一起使用?

解决方法

$curl -X POST http://localhost:3000/api/v1/shops.json -d 
  "shop[name]=Supermarket 
  &shop[products][]=fruit 
  &shop[products][]=eggs 
  &auth_token=a1b2c3d4"

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读