请问如何设计前端UI,方便编辑SQL多对多关系?

我正在做一个在线书店,显然书和作者是多对多关系(一本书可以有多个作者,一个作者可以写多本书),因此需要三个表:
书表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能令用户用起来方便。

谢谢!


哈士奇WWW
浏览 838回答 4
4回答

偶然的你

输入框可以参考一下element ui的的输入框。姓名模糊搜索搜索结果显示可以分辨作者的信息。如:学校、出生年份

慕哥9229398

问题1:使用模糊搜索,有一种输入框是输入部分文字,会显示出一个下拉列表,把模糊搜索匹配的结果显示出来问题2:同上,在下拉列表中选择正确的人名
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript