我如何解析golang中来自gherkin数据表中struct中声明的int类型的列的空/空/空值?

问题描述 投票:0回答:1

我想将小黄瓜数据表值转换为struct。在该结构中,我有一个声明为int类型的属性。如果小黄瓜数据表中没有数据,我应该如何填充值?在当前情况下,它引发错误。

这里是特征文件


Feature: send request
  In order to be a rest tester
  I need to be able to make rest requests to server

  Scenario: GET request are allowed
    When I send "GET" request to "http://localhost:3000/posts/"
    Then the response code should be 200
    And the response from server should match:
    | Id | Title | Author | Worth |
    | 1 | json-server | typicode |  |

这里是相应的结构:

type response struct {
    Id     int    `json:"id"`
    Title  string `json:"title"`
    Author string `json:"author"`
    Worth int `json:"worth"`
}

使用此行代码将其转换为struct:

assist := assistdog.NewDefault()
expectedStruct := &response{}
result, err2 := assist.CreateSlice(expectedStruct, dataTable)

我在这种情况下出错。有人可以帮我吗?在此先感谢:)

go gherkin
1个回答
0
投票

您需要使用omitempty,并且该字段应该是一个指针,以便可以将其设置为nil

type response struct {
    Id     int    `json:"id"`
    Title  string `json:"title"`
    Author string `json:"author"`
    Worth  *int `json:"worth,omitempty"`
}
© www.soinside.com 2019 - 2024. All rights reserved.