当前位置: 首页 > 知识库问答 >
问题:

为什么我在帖子中得到错误?拉拉韦尔

彭宏义
2023-03-14

因此,我尝试使用Laravel创建一个简单的REST API。在测试API并为数据库创建新项时,我收到一个错误:

照明\database\queryexception:SQLState[23000]:完整性约束违反:1452无法添加或更新子行:外键约束失败(世界城市,约束cities_ibfk_1外键(countrycode)引用countrycode(code)国家(code)(code)))(SQL:插入到LH,Ragnar Alley,200000000,2020-02-19 01:07:26,2020-02-19 01:07:26))在文件C中:\xampp\htdocs\myapp\vendor\laravel\framework\src\Illuminate\database\connection.php第669行

以下是控制器:


      public function createCity(Request $request) {
        $city = new City;
        $city->Name = $request->Name;
        $city->CountryCode = $request->CountryCode;
        $city->District = $request->District;
        $city->Population = $request->Population;
        $city->save();

模型:

class City extends Model
{
    protected $table = 'cities';

    protected $fillable = ['Name', 'CountryCode', 'District', 'Population'];
}

帮助将是感激的,因为我不明白为什么我得到后,张贴的错误。提前谢了。

共有1个答案

杭涵映
2023-03-14

您试图将VLH作为CONTRY_CODE值添加到模型中。但此字段折射到另一个具有CONTRY名称的模型中,在该表中没有任何带有此条件的记录,并且VLH值未知或它。

您可以浏览这些模型之间的关系(如果可能的话),或者首先查找具有该代码国家ID,然后将其插入到模型中。

 类似资料: