teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

8

UserSortedComponent.vue 変更更新しました

2019/10/09 01:24

投稿

waiemu
waiemu

スコア14

title CHANGED
File without changes
body CHANGED
@@ -60,8 +60,8 @@
60
60
  <draggable v-model="users" :options="options">
61
61
  <div class="item" v-for="(user,usid) in users" :key="user.sort_id">
62
62
  <span> 表示順{{ usid + 1}} 【{{user.name}}】</span>
63
- <input type="hidden" name="userid" v-bind:userid="[user.id]">
63
+ <input type="hidden" name="userid" v-bind:userid="user.id">
64
- <input type="hidden" name="sortid" v-bind:sortid="[usid]">
64
+ <input type="hidden" name="sortid" v-bind:sortid="usid">
65
65
  </div>
66
66
  </draggable>
67
67
  <div class="submit-box">

7

タイトル変更、補足追加

2019/10/09 01:24

投稿

waiemu
waiemu

スコア14

title CHANGED
@@ -1,1 +1,1 @@
1
- Laravel + Vue.js + vue.draggable 値の取得方法につ
1
+ Laravel + Vue.js + vue.draggable 値の指定方法がわからな
body CHANGED
@@ -158,6 +158,12 @@
158
158
  params.append ('userid', user.id),
159
159
  params.append ('sortid', user.sort_id),
160
160
  ```
161
+
162
+
163
+ ```
164
+ params.append ('userid', draggable.userid),
165
+ params.append ('sortid', draggable.sort_id),
166
+ ```
161
167
  としても値が取得できません。
162
168
  ChromeプラグインのVueDevToolsで確認したところ、Array[0]となっています。
163
169
 

6

初心者マーク

2019/10/08 02:50

投稿

waiemu
waiemu

スコア14

title CHANGED
File without changes
body CHANGED
@@ -189,4 +189,6 @@
189
189
  ```
190
190
  thisが効いていない。機能していない。そのため、「空の値は不可」とSQLエラーが返ってくる。
191
191
 
192
+
193
+
192
194
  初心者ですが、何卒ご教授願います。

5

タイトル変更

2019/10/04 05:58

投稿

waiemu
waiemu

スコア14

title CHANGED
@@ -1,1 +1,1 @@
1
- Laravel + Vue.js + vue.draggable 入れ替え後の取得した
1
+ Laravel + Vue.js + vue.draggable 値取得方法につ
body CHANGED
File without changes

4

補足情報変更、試したこと追加

2019/10/03 02:40

投稿

waiemu
waiemu

スコア14

title CHANGED
File without changes
body CHANGED
@@ -112,10 +112,6 @@
112
112
  this.users = response.data;
113
113
  });
114
114
  }
115
- },
116
- mounted() {
117
- var self = this;
118
- axios.get('/users/sorted')
119
115
  }
120
116
  });
121
117
  </script>
@@ -185,4 +181,12 @@
185
181
  ```
186
182
  としても、そもそもuserid,sortidが VueDevToolsに表示されなくなってしまいました。
187
183
 
184
+ 3
185
+ 子要素から親要素へ値を渡すことが必要?
186
+ ```
187
+ params.append ('userid', this.userid),
188
+ params.append ('sortid', this.sortid),
189
+ ```
190
+ thisが効いていない。機能していない。そのため、「空の値は不可」とSQLエラーが返ってくる。
191
+
188
192
  初心者ですが、何卒ご教授願います。

3

補足情報追加

2019/10/02 07:59

投稿

waiemu
waiemu

スコア14

title CHANGED
@@ -1,1 +1,1 @@
1
- Laravel + vue.draggable 入れ替え後の値を取得したい
1
+ Laravel + Vue.js + vue.draggable 入れ替え後の値を取得したい
body CHANGED
@@ -2,7 +2,6 @@
2
2
  【環境】
3
3
  - PHP7.2
4
4
  - Laravel5.6
5
- - MySQL5.6
6
5
  - Vue.js2.9.6
7
6
 
8
7
  【データベース】
@@ -25,7 +24,7 @@
25
24
  |2|次郎|2|
26
25
  |3|三郎|1|
27
26
 
28
- draggableで入れ替えた後に、入れ替え後の値を表示まではできたのですが、その値をinput文に挿入できないでいます。配列の中の値を取得するにはどのようにすればよいのでしょうか。
27
+ vue.draggableで入れ替えた後に、入れ替え後の値を表示まではできたのですが、その値をinput文に挿入できないでいます。配列の中の値を取得するにはどのようにすればよいのでしょうか。
29
28
 
30
29
  ### 該当ソースコード
31
30
  ######sorted.blade.php

2

補足情報追記(web.php)

2019/09/27 05:37

投稿

waiemu
waiemu

スコア14

title CHANGED
File without changes
body CHANGED
@@ -124,11 +124,11 @@
124
124
  #####UserController.php
125
125
  ```
126
126
  //表示画面
127
- public function userSorted(User $user)
127
+ public function userSorted()
128
128
  {
129
129
  $users = User::orderBy('sort_id', 'asc')->get();
130
130
 
131
- return view('users.sorted', ['user' => $user, 'users' => $users]);
131
+ return view('users.sorted', ['users' => $users]);
132
132
  }
133
133
 
134
134
  //更新処理
@@ -142,6 +142,11 @@
142
142
  return $users;
143
143
  }
144
144
  ```
145
+ #####web.php
146
+ ```
147
+ Route::get('users/sorted', 'UserController@userSorted');//順番入れ替え出力
148
+ Route::post('users/sorted_store', 'UserController@userSortedStore');//更新処理
149
+ ```
145
150
  ### 教えていただきたいところ
146
151
  ・userid , sortidの値が取得をしたい
147
152
  ・取得したデータを配列へと変換して送信したい

1

補足説明の追加

2019/09/27 03:48

投稿

waiemu
waiemu

スコア14

title CHANGED
@@ -1,1 +1,1 @@
1
- Laravel + vue.draggable 入れ替えた順番送信したい
1
+ Laravel + vue.draggable 入れ替え後の値取得したい
body CHANGED
@@ -5,9 +5,6 @@
5
5
  - MySQL5.6
6
6
  - Vue.js2.9.6
7
7
 
8
- 【実現したいこと】
9
- Vue.draggableを使って、入れ替えた順番を送信したい。
10
-
11
8
  【データベース】
12
9
  **usersテーブル**
13
10
  |id|name|sort_id|
@@ -28,7 +25,29 @@
28
25
  |2|次郎|2|
29
26
  |3|三郎|1|
30
27
 
28
+ draggableで入れ替えた後に、入れ替え後の値を表示まではできたのですが、その値をinput文に挿入できないでいます。配列の中の値を取得するにはどのようにすればよいのでしょうか。
29
+
31
30
  ### 該当ソースコード
31
+ ######sorted.blade.php
32
+ ```
33
+ <div id="us_dnd" class="us_dnd w-100">
34
+ <user-sorted-component v-bind:users="{{ $users }}">
35
+ </user-sorted-component>
36
+ </div>
37
+ ```
38
+ ######app.js
39
+ ```
40
+ require("./bootstrap");
41
+ window.Vue = require("vue");
42
+
43
+ window.axios = require('axios');
44
+ window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
45
+
46
+ Vue.component('user-sorted-component', require("./sorted/UserSortedComponent.vue").default);
47
+ const us_dnd = new Vue({
48
+ el: "#us_dnd",
49
+ })
50
+ ```
32
51
  ######UserSortedComponent.vue
33
52
  ```
34
53
  <!-- template -->