フロントエンドでtaggingJS、バックエンドでlaravel-taggingを使用してタグ付けシステムを構築しようとしています。私はそれらを別々に動作させていますが、taggingJSによって生成されたタグをデータベースに入れることはできません。型エラー:Illuminate Database Grammar :: parameterize()に渡される引数1は配列型の文字列でなければなりません
マイLaravelコントローラは、次のようになります。
public function storeData(Request $request)
{
$link = new Links;
$link->tag_name = $request->taggone;
$link->save();
$link->tag(explode(',', $request->taggone));
$link->save();
return view('pages.postdata', compact('tags'));
}
HTMLコードは次のようになります。私はこのような変わらないtaggingJS」Javascriptを左
<div class="example-wrapper">
<div class="tags well">
<label for="tag" class="control-label">Tag</label>
<div data-tags-input-name="taggone" id="tag"></div>
</div>
</div>
(それも関連している場合、私はわかりませんこの問題については、
<script>
// jQuery on Ready example
(function($, window, document, undefined) {
$(document).ready(function() {
var t = $("#tag").tagging();
t[0].addClass("form-control");
// console.log(t[0]);
});
})(window.jQuery, window, document);
</script>
正しく理解すれば、fiに入力されたタグコントローラtaggone
がコントローラから要求され、データベースに保存されるはずです。私は、フォームを送信するときしかし、私はエラーを取得する:
Type error: Argument 1 passed to Illuminate\Database\Grammar::parameterize() must be of the type array, string given, called in /home/vagrant/Code/Laravel/vendor/laravel/framework/src/Illuminate/Database/Query/Grammars/Grammar.php on line 678
は、私はそれが動作するように取得する方法についてアドバイスを持つことができますか?
この方法を行うことができます。 –
タグではなく、tag_nameを保存するときに、エラーが日付(created_at&updated_at)フィールドにあります: 'Grammar-> parameterize( '2016-05 -11 07:49:31 ') '。 Linksモデルはどのように宣言されていますか? – Noddy
これは私のリンクモデルです: '<?ph 名前空間App; Conner \ Tagging \ Taggableを使用します。 Illuminate \ Database \ Eloquent \ Modelを使用します。 クラスリンクはモデルを拡張します { Taggableを使用します。 protected $ table = 'tagging_tagged'; } ' –