我有一个文件standard_en.html
,其中包含以下代码:
<td class="title">Date of Birth</td>
<td colspan="2">
{{ meta/birth_date | date: "%m/%d/%Y" }}
</td>
这是输出08/18/1970
,这是错误的日期。
如果我用{{ meta }}
替换液体线,则输出:
{"source_url"=>"http://vdocs-jg/forms/goodlife/standard.html?__launch_signing__=true&customer_name=John%20Doe&gender__male=true&birth_date_DAY=8&birth_date_MONTH=8&birth_date_YEAR=1988&address=675%20Hermione%20Street&city=Lawrencetown&state_id=MA&postal=01823&ctn=4136743582&business_phone=4156328553&business_extension=93&drivers_license=TWACI2345&email=me@me.com&email_okay=true&employer_name=Southwest%20Electric&employer_phone=4032453564&emergency_contact=Gerald&emergency_phone=4564244543&referred_by=Steve%20Murphy&referred_number=546642",
"source_type"=>"html",
"terminal_lang"=>"en",
"dba"=>"wirelesswave",
"country"=>"CA",
"terminal_id"=>2,
"contract_lang"=>"en",
"contract_parser"=>"web_form",
"contract_with"=>"carrier",
"carrier"=>"goodlife",
"customer_name"=>"John Doe",
"gender"=>"male",
"birth_date"=>"19880808",
"contract_template"=>"goodlife_standard_1",
"industry_type"=>"cellular",
"pos_status"=>"unknown",
"tran_id"=>"20110816161001_4136743582"}
(为便于阅读而格式化,删除了一些信息)
如您所见,birth_date是“19880808”,这是我的测试所期望的值。甚至在source_url中我们正在从中导出该日期正确设置(birth_date_DAY=8&birth_date_MONTH=8&birth_date_YEAR=1988
)
此外还有一些附近的行
<td class="title">Address</td>
<td>{{ meta/address }}</td>
<td class="title">City</td>
<td>{{ meta/city }}</td>
行为正确。
为什么Liquid推出这个看似随意的日期?这可以从其他地方播种吗?
答案 0 :(得分:1)
19880808
是Unix格式的日期。即这不是1988-08-08,这是1970-08-18(或+3时区中的19)。
$ ~ irb
2.1.0 :001 > Time.at(19880808)
=> 1970-08-19 05:26:48 +0300
如果您希望将19880808
显示为1988-08-08
,则应在使用Date#strptime
方法之前进行解析,之后将其转换为日期格式。