有一个手机号控件(对应表里的一个字段 telephone ),如下图。 存储内容是区号+文本形式(比如:+1-123456789 )。 同一个区号可能有多个国家,比如,+1 可能属于美国、加拿大。 https://i.imgur.com/SEERndK.png
问题: 后端返回控件内容(+1-189008732 )给到前端,此时前端并不知道这里的+1 是属于美国还是加拿大,因此无法定位控件左边的区号。请问大家这种情况应该如何处理?
1
Y29tL2gwd2Fy 2021-06-01 23:58:07 +08:00 via Android
看看 telegram 怎么做的
|
2
xupefei 2021-06-02 02:04:26 +08:00 via iPhone
存 iso3166 国家代码,前段可以维护一个国家到手机国际代码的映射表
|
3
xupefei 2021-06-02 02:06:17 +08:00 via iPhone
你要意识到有些地区是某国的海外属地,电话国家号和本土不一样…
|
4
ericls 2021-06-02 05:12:00 +08:00 via iPhone
手机号存属地有什么用?我经常就直接选美国 也没遇到过问题
|
5
Rocketer 2021-06-02 07:00:51 +08:00 via iPhone
看你到底想干什么了,为什么必须要区分美国还是加拿大?
如果核心是国家,那就存国家,然后根据国家取区号。 如果核心是区号,那就存取号,然后把所有国家都显示出来(如:美国 /加拿大) PS:区号本来就不是与国家绑定的,还有一个国家多个区号的呢 |
6
mingl0280 2021-06-02 07:04:15 +08:00 via Android
这个信息你没法查也不可能维护的,你存就存了完事了。
|
7
zhou00 OP |
8
ShuoHui 2021-06-02 09:14:34 +08:00
没有意义吧,我登录 tg 每次都是先看到加拿大就选加拿大,验证也能过。。
|
9
ShuoHui 2021-06-02 09:17:01 +08:00
美国的号码的话还有区号可以验证吧。+1-(202)6666666,202 好像是华盛顿
|
10
no1xsyzy 2021-06-02 09:44:12 +08:00
一对多映射,别想了,加字段吧
|
11
xuanbg 2021-06-02 10:30:26 +08:00
国家信息里面绑定区号,表里存国家 ID 。如果需要冗余,就多存国家名称和区号两个字段
|