我正在做一个在线书店,显然书和作者是多对多关系(一本书可以有多个作者,一个作者可以写多本书),因此需要三个表:
书表B: id, title, ...
作者表A: id, name, ...
两者关系表C: bid, aid。
现在我们向数据库录入一本书(假定是数据库没有的新书),那么一定要向B表和C表插入新记录,但A表呢?这本新书的作者可能已经在A中了,也可能不在,若不在,就应先创建作者插入到A中,取得自动递增id,才能和bid一起插入到C中。
我想问的是,前端UI怎么设计,才能优雅地提示用户该如何录入作者,例如:
当作者不存在时,提示用户先创建作者;
当作者已存在或刚创建完,如何把作者id和这本书关联起来?
我曾想过用作者名字来找id,比如用一个 input 框要求用户输入作者名字,然后Ajax提交到后台搜索数据库,没找到时提示用户作者尚不存在,若找到了……
但这种方案也有几个挺难办的问题:
1.如果用户把名字输错导致没有找到怎么办?当作者是外国人时名字很容易输错
2.用户输对了,但却找到多个重名的怎么办?当作者是中国人时重名并不罕见
拜托大家帮我设计一下UI,我觉得不管怎么样,后台肯定都有办法处理!所以我不担心后台,我希望前端UI能令用户用起来方便。
谢谢!
偶然的你
慕哥9229398
相关分类