2017-03-06 116 views
0

我正在Laravel项目上工作,但有点困惑如何发布标签 - 它的多个值给控制器,以及如何将其单独保存在数据库?这些值将被保存在多个行(记录)对单外键..如何在Laravel 5.4.12中发布引导标签 - 输入值?

<div class="form-group wish-tags"> 
 
<label class="col-lg-3 control-label">Wish to visit:</label> 
 
    <div class="col-lg-8"> 
 
     <input type="text" value="" data-role="tagsinput" id="tags" name="wish-tags" class="form-control"> 
 
    </div> 
 
</div> 
 
<div class="form-group wish-tags"> 
 
    <label class="col-lg-3 control-label">Already visited:</label> 
 
     <div class="col-lg-8"> 
 
     <input type="text" value="" data-role="tagsinput" id="tags" name="visited-tags" class="form-control"> 
 
     </div> 
 
</div>

Visitedlist表

CREATE TABLE `visitedlist` (
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
`user_id` INT(10) UNSIGNED NOT NULL, 
`locations` VARCHAR(100) NOT NULL, 
`created_at` TIMESTAMP NULL DEFAULT NULL, 
`updated_at` TIMESTAMP NULL DEFAULT NULL, 
PRIMARY KEY (`id`), 
INDEX `FK1_vistedlist_list` (`user_id`), 
CONSTRAINT `FK1_vistedlist_list` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON UPDATE CASCADE ON DELETE CASCADE) 

愿望清单表

CREATE TABLE `wishlist` (
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
`user_id` INT(10) UNSIGNED NOT NULL, 
`locations` VARCHAR(50) NOT NULL, 
`created_at` TIMESTAMP NULL DEFAULT NULL, 
`updated_at` TIMESTAMP NULL DEFAULT NULL, 
PRIMARY KEY (`id`), 
INDEX `FK1_wishList` (`user_id`), 
CONSTRAINT `FK1_wishList` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON UPDATE CASCADE ON DELETE CASCADE) 

回答

1

根据数据如何格式化,何时收到它在你的控制器方法中,你需要将它分成单独的项目,循环并保存它们中的每一个。

所以,让我们收到你的方法的项目,如“项目1,项目2,项目3”,你的代码看起来是这样的:

$locations = Request::input('wish-tags'); 

foreach (explode(",", $locations) as $location) 
{ 
    $tag = new Tag(); 
    $tag->location = $location; 
    $tag->user()->associate($theUser); 
    $tag->save(); 
} 

希望帮助!如果不能随意发表评论!

+0

只有输入的最后一个值不是多个。为什么? –

+0

对不起,但没有特定的代码部分(完整的表单,控制器操作等),很难找到原因。我会建议,你要么更新你的开场白,要么开始一个全新的问题,因为这似乎是一个全新的问题。 – Tek

+0

好的,这是个好主意..thanx –