如何在Salesforce站点使用lightning-record-edit-form?遇记录不可创建错误
解决Salesforce站点中lightning-record-edit-form的“记录不可创建”错误
首先先确认你的代码(已格式化):
<lightning-record-edit-form object-api-name="Financial_Entity_AC_Detail__c" onsuccess={handleSuccess}> <lightning-messages> </lightning-messages> <lightning-input-field field-name="Name"> </lightning-input-field> <lightning-input-field field-name="Financial_Entity__c" value={currentPayeId} filter={filter} disabled={isPayeeLookupDisabled}> </lightning-input-field> <lightning-input-field field-name="Bank_Account_Number__c"> </lightning-input-field> <lightning-input-field field-name="Bank_Name__c"> </lightning-input-field> <lightning-input-field field-name="Branch_Name__c"> </lightning-input-field> <lightning-input-field field-name="IFSC_Code__c"> </lightning-input-field> <lightning-input-field field-name="Task_ID__c" disabled value={taskId}> </lightning-input-field> <lightning-input-field field-name="Verification_Type__c"> </lightning-input-field> <lightning-button variant="destructive-text" label="Back" title="Back to payee" onclick={backToPayee} class="slds-m-right_meduim" disabled={isbackToPayeeDisabled}></lightning-button> <lightning-button class="slds-m-top_small" type="submit" label="Create new" variant="brand"> </lightning-button> </lightning-record-edit-form>
针对“记录不可创建”的错误,按以下步骤逐一排查:
检查站点用户的对象与字段权限
若使用公共站点,需确认站点对应的来宾用户配置文件;若为登录用户,检查其所属配置文件:- 是否拥有
Financial_Entity_AC_Detail__c对象的创建权限 - 是否对表单中所有字段(如Name、Bank_Account_Number__c等)拥有编辑权限,必填字段必须确保有访问权限
- 是否拥有
验证对象的必填字段完整性
进入对象管理器查看Financial_Entity_AC_Detail__c的字段属性:- 确认所有系统必填/自定义必填字段都已添加到表单中,或已设置默认值
- 若存在未在表单中包含的必填字段,提交时会直接触发创建失败
检查Salesforce站点的对象访问设置
进入「设置 > 站点 > 目标站点名称 > 公共访问设置」,在对象设置中找到Financial_Entity_AC_Detail__c:- 确认已启用“创建”权限
- 同步检查字段权限是否配置正确
排查Lookup字段的有效性与权限
针对表单中的Financial_Entity__clookup字段:- 确保站点用户对关联的
Financial_Entity__c对象拥有读取权限,否则即使传入currentPayeId,系统也无法验证记录有效性 - 确认
currentPayeId为有效的Salesforce记录ID,避免传入空值或无效ID
- 确保站点用户对关联的
检查对象的业务逻辑限制
- 验证
Financial_Entity_AC_Detail__c是否存在验证规则,规则条件是否导致创建请求被拦截 - 检查是否有Before Insert触发器抛出错误,阻止记录创建
- 可以尝试在Salesforce后台手动创建该对象记录,验证是否能成功,以此排除业务逻辑层面的问题
- 验证
代码细节排查与错误捕获
- 核对所有
field-name的API名称是否与对象字段完全一致(Salesforce API名称大小写敏感) - 检查
disabled属性的Task_ID__c字段:若该字段为必填项,需确保有默认值或自动填充逻辑,否则会因字段为空导致创建失败 - 添加错误捕获函数,获取具体错误信息:
然后在handleError(event) { console.log('创建错误详情:', JSON.stringify(event.detail)); }lightning-record-edit-form上添加onerror={handleError},通过浏览器控制台查看精准错误原因
- 核对所有
内容的提问来源于stack exchange,提问作者Shiva Nothernarc
相关产品推荐
相关产品推荐

