[{"data":1,"prerenderedAt":240},["ShallowReactive",2],{"docs-doc-\u002Fdocs\u002Fguide\u002Fcrud":3,"docs-live-paths":189},{"id":4,"title":5,"body":6,"description":175,"extension":176,"meta":177,"navigation":184,"path":185,"seo":186,"stem":187,"__hash__":188},"content\u002Fdocs\u002Fguide\u002Fcrud.md","配置一个通用管理列表",{"type":7,"value":8,"toc":159},"minimark",[9,13,17,29,32,37,64,68,75,79,82,86,89,93,96,99,119,122,128,134,137],[10,11,12],"h2",{"id":12},"本文说明什么",[14,15,16],"p",{},"许多业务系统的主界面是「管理列表」：一张表，支持搜索、分页、详情查看与新增修改。衍数中这类列表大多由配置完成——本文说明列表通常需要配置的几件事。具体入口与菜单以实际实例界面为准。",[18,19,20],"blockquote",{},[14,21,22,23,28],{},"前提：已有一个",[24,25,27],"a",{"href":26},"\u002Fdocs\u002Fconcepts\u002Fcore","数据模型","。没有模型，界面无从谈起。",[10,30,31],{"id":31},"通常要配置的五件事",[33,34,36],"h3",{"id":35},"列表列显示哪些字段长什么样","① 列表列：显示哪些字段、长什么样",[38,39,40,44],"ul",{},[41,42,43],"li",{},"勾选要在列表里显示的字段，并调整顺序与宽度。",[41,45,46,47],{},"一个字段以什么形式呈现，通常由字段类型自动决定，也可显式指定：\n",[38,48,49,52],{},[41,50,51],{},"文本 → 文本；数字\u002F金额 → 数字（平台默认最多显示两位小数）；日期 → 日期。",[41,53,54,58,59,63],{},[55,56,57],"strong",{},"下拉\u002F枚举字段"," → 显示成字典值的中文含义（例如状态 ",[60,61,62],"code",{},"pending"," 显示为「待处理」），而不是英文代码。",[33,65,67],{"id":66},"关联字段显示名称而不是一串-id","② 关联字段：显示名称而不是一串 ID",[14,69,70,71,74],{},"当一列引用另一张表的数据（例如「订单」引用「客户」）时，平台负责做「翻译」：界面显示",[55,72,73],{},"客户的名称","，而不是客户的内部 ID。配置时指定该列引用哪张表、显示它的哪个字段即可。",[33,76,78],{"id":77},"搜索让用户能快速筛","③ 搜索：让用户能快速筛",[14,80,81],{},"把需要参与筛选的字段放进搜索区（如订单号、状态、日期范围）。搜索条件应与字段类型匹配——日期字段用日期范围，下拉字段用选项，而不是一个通用文本框。",[33,83,85],{"id":84},"按钮与操作谁能做什么","④ 按钮与操作：谁能做什么",[14,87,88],{},"列表上的「新增、编辑、删除、详情」等操作，按角色控制可见与可用。删除类操作建议在配置里就开启二次确认，避免误删。",[33,90,92],{"id":91},"排序与分页","⑤ 排序与分页",[14,94,95],{},"默认按哪个字段排（如更新时间倒序、最新在前），每页条数等。",[10,97,98],{"id":98},"配置里的小讲究",[38,100,101,107,113],{},[41,102,103,106],{},[55,104,105],{},"数字字段明确单位","：列表中的数字字段宜带有明确单位\u002F标签；需自动汇总的字段，界面以标记提示「该值由系统计算，非人工录入」。",[41,108,109,112],{},[55,110,111],{},"字段可溯源","：平台可为字段标注来源（取自模型 \u002F 系统计算 \u002F 引用其它表），查看「这个数字从何而来」无需猜测。",[41,114,115,118],{},[55,116,117],{},"显示宽度有限","：长文本放列表会撑爆排版，通常列表显示摘要，完整内容放详情页。",[10,120,121],{"id":121},"常见疑问",[14,123,124,127],{},[55,125,126],{},"列表和模型是强绑定吗？","\n模型定义数据本身；视图定义「这堆数据对某个角色长什么样」。同一模型可以配不同视图，服务不同场景（如运营看统计口径、仓库只看待办）。",[14,129,130,133],{},[55,131,132],{},"配置了没生效？","\n先确认是否仍停留在草稿\u002F未发布状态——衍数的统一机制是「草稿 → 预览 → 发布」：修改后未生效时处于草稿，预览确认无误后发布方才生效。",[10,135,136],{"id":136},"相关阅读",[38,138,139,145,152],{},[41,140,141,142],{},"没有模型先看这个 → ",[24,143,144],{"href":26},"动态数据模型 · 衍枢",[41,146,147,148],{},"想理解字段类型 → ",[24,149,151],{"href":150},"\u002Fdocs\u002Fconcepts\u002Fview","衍景 · JSON 驱动界面",[41,153,154,155],{},"想知道页面从哪来 → ",[24,156,158],{"href":157},"\u002Fdocs\u002Fguide\u002Fmodel-gen","定义模型并生成页面",{"title":160,"searchDepth":161,"depth":161,"links":162},"",2,[163,164,172,173,174],{"id":12,"depth":161,"text":12},{"id":31,"depth":161,"text":31,"children":165},[166,168,169,170,171],{"id":35,"depth":167,"text":36},3,{"id":66,"depth":167,"text":67},{"id":77,"depth":167,"text":78},{"id":84,"depth":167,"text":85},{"id":91,"depth":167,"text":92},{"id":98,"depth":161,"text":98},{"id":121,"depth":161,"text":121},{"id":136,"depth":161,"text":136},"有模型之后，把数据做成一个可搜、可看、可操作的管理列表——字段显示、搜索、操作按钮怎么配。","md",{"audience":178,"type":179,"section":180,"pr_order":181,"role":182,"duration":183},"public","guide","使用指南",1,"实施搭建者","约 6 分钟",true,"\u002Fdocs\u002Fguide\u002Fcrud",{"title":5,"description":175},"docs\u002Fguide\u002Fcrud","LwVlZcEW6xLPtHLrZtJ7ENLXyFm6AO5DGmuVrKq2RDE",[190,192,194,195,197,199,200,202,204,206,208,210,211,213,214,216,218,220,222,224,226,228,230,232,234,236,238],{"path":191},"\u002Fdocs\u002Fconcepts\u002Fai",{"path":193},"\u002Fdocs\u002Fconcepts\u002Fai-team",{"path":26},{"path":196},"\u002Fdocs\u002Fconcepts\u002Fflux",{"path":198},"\u002Fdocs\u002Fconcepts\u002Fmetrics",{"path":150},{"path":201},"\u002Fdocs\u002Fdemo-center",{"path":203},"\u002Fdocs\u002Fdeploy\u002Foverview",{"path":205},"\u002Fdocs\u002Ffaq",{"path":207},"\u002Fdocs\u002Fglossary",{"path":209},"\u002Fdocs\u002Fguide\u002Fai-kb",{"path":185},{"path":212},"\u002Fdocs\u002Fguide\u002Fdb-connect",{"path":157},{"path":215},"\u002Fdocs\u002Fintro\u002Fframeworks",{"path":217},"\u002Fdocs\u002Fintro\u002Foverview",{"path":219},"\u002Fdocs\u002Fintro\u002Fvalue",{"path":221},"\u002Fdocs\u002Fintro\u002Fwhy",{"path":223},"\u002Fdocs\u002Fmechanism\u002Fai-employee-task",{"path":225},"\u002Fdocs\u002Fmechanism\u002Fdata-flux",{"path":227},"\u002Fdocs\u002Fmechanism\u002Fmetrics-contract",{"path":229},"\u002Fdocs\u002Fmechanism\u002Fpermission",{"path":231},"\u002Fdocs\u002Fmechanism\u002Fpublish",{"path":233},"\u002Fdocs\u002Fquickstart\u002Fclone-template",{"path":235},"\u002Fdocs\u002Fquickstart\u002Fdemo-30s",{"path":237},"\u002Fdocs\u002Fquickstart\u002Ffive-minutes",{"path":239},"\u002Fdocs\u002Fsystem\u002Foverview",1788586879703]