俄语站缺货提示显示“Товар есть”,意思是“有货”,实际库存为 0,错误展示持续 6 小时。第一次遇到会往复杂处想,其实漏掉的多是个小前提。
out_of_stock = Товара нет в наличии in_stock = Товар в наличии
提示由“商品”加“没有”两段拼接,俄语的否定要加 не 并变格,不能按中文顺序贴。模板只换了名词,否定词没进句子。拼接方式让翻译无法调整整体结构。这一点先确认清楚,后面就不用反复试。
「字符串拼接语序」相关的日志我一般连着看前后五分钟,单看一条报错经常判断不出是哪一步失败。把这次用到的命令存进笔记,比记住结论有用,换个环境还能照着走。
改完隔一天再看一次,当场正常不代表能稳住。测试环境和线上的差别,往往就在版本号和那几行被忽略的配置上。
具体做法是,整句交给翻译 不要分段拼接;否定含义用独立词条 out_of_stock 表达;译文占位符只保留商品名 其余词由译者写;用库存 0 和库存 5 各触发一次提示。
改完照着核一遍,库存 0 时俄语显示“Товара нет в наличии”,库存 5 时显示有货。
