質問編集履歴
6
ありがとうございます。記載しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -62,6 +62,7 @@
|
|
62
62
|
|
63
63
|
|
64
64
|
```ここに言語を入力
|
65
|
+
<Itemモデル
|
65
66
|
<Item.rb>
|
66
67
|
class Item < ApplicationRecord
|
67
68
|
extend ActiveHash::Associations::ActiveRecordExtensions
|
@@ -88,9 +89,22 @@
|
|
88
89
|
end
|
89
90
|
end
|
90
91
|
```
|
92
|
+
```ここに言語を入力
|
93
|
+
<Chargeモデル>
|
94
|
+
class Charge < ActiveHash::Base
|
95
|
+
self.data = [
|
96
|
+
{ id: 1, name: '--' },
|
97
|
+
{ id: 2, name: '着払い(購入者負担)' },
|
98
|
+
{ id: 3, name: '送料込み(出品者負担)' },
|
99
|
+
]
|
100
|
+
end
|
91
101
|
|
102
|
+
include ActiveHash::Associations
|
103
|
+
has_many :items
|
104
|
+
```
|
92
105
|
|
93
106
|
|
107
|
+
|
94
108
|
【エラー内容を調べた結果】
|
95
109
|
current_scopeメソッドが定義されていない、というエラーであるようでしたが、current_scopeメソッドを検索してもそれらしいものはなく、どのように定義するのか教えていただけますでしょうか?
|
96
110
|
@item.saveの部分を消してみたりしましたが、出品ボタンを押した後、出品情報が保存されないという状態になってしまったので、やはりこのエラーを解決しなければいけないと考えております。
|
5
アドバイスありがとうございます。言語部分・エラー内容で困っている部分を修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|

|
5
5
|
|
6
|
-
|
7
6
|
```ここに言語を入力
|
8
7
|
<items_controller.rb>
|
9
8
|
class ItemsController < ApplicationController
|
@@ -35,7 +34,10 @@
|
|
35
34
|
end
|
36
35
|
end
|
37
36
|
|
37
|
+
```
|
38
38
|
|
39
|
+
|
40
|
+
|
39
41
|
```ここに言語を入力
|
40
42
|
<migrationファイル>
|
41
43
|
class CreateItems < ActiveRecord::Migration[6.0]
|
@@ -57,6 +59,8 @@
|
|
57
59
|
end
|
58
60
|
```
|
59
61
|
|
62
|
+
|
63
|
+
|
60
64
|
```ここに言語を入力
|
61
65
|
<Item.rb>
|
62
66
|
class Item < ApplicationRecord
|
@@ -85,6 +89,8 @@
|
|
85
89
|
end
|
86
90
|
```
|
87
91
|
|
92
|
+
|
93
|
+
|
88
94
|
【エラー内容を調べた結果】
|
89
95
|
current_scopeメソッドが定義されていない、というエラーであるようでしたが、current_scopeメソッドを検索してもそれらしいものはなく、どのように定義するのか教えていただけますでしょうか?
|
90
96
|
@item.saveの部分を消してみたりしましたが、出品ボタンを押した後、出品情報が保存されないという状態になってしまったので、やはりこのエラーを解決しなければいけないと考えております。
|
4
アドバイスありがとうございます。言語部分・エラー内容で困っている部分を修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -35,7 +35,29 @@
|
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
+
|
38
39
|
```ここに言語を入力
|
40
|
+
<migrationファイル>
|
41
|
+
class CreateItems < ActiveRecord::Migration[6.0]
|
42
|
+
def change
|
43
|
+
create_table :items do |t|
|
44
|
+
t.references :user ,null: false ,foreign_key: true
|
45
|
+
t.string :image ,null: false
|
46
|
+
t.string :name ,null: false
|
47
|
+
t.text :introduction ,null: false
|
48
|
+
t.integer :price ,null: false
|
49
|
+
t.integer :category_id ,null: false
|
50
|
+
t.integer :status_id ,null: false
|
51
|
+
t.integer :charge_id ,null: false
|
52
|
+
t.integer :prefecture_id ,null: false
|
53
|
+
t.integer :ship_date_id ,null: false
|
54
|
+
t.timestamps
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
```
|
59
|
+
|
60
|
+
```ここに言語を入力
|
39
61
|
<Item.rb>
|
40
62
|
class Item < ApplicationRecord
|
41
63
|
extend ActiveHash::Associations::ActiveRecordExtensions
|
@@ -61,27 +83,6 @@
|
|
61
83
|
validates :ship_date_id, numericality:{ other_than: 1 }
|
62
84
|
end
|
63
85
|
end
|
64
|
-
|
65
|
-
|
66
|
-
```ここに言語を入力
|
67
|
-
<migrationファイル>
|
68
|
-
class CreateItems < ActiveRecord::Migration[6.0]
|
69
|
-
def change
|
70
|
-
create_table :items do |t|
|
71
|
-
t.references :user ,null: false ,foreign_key: true
|
72
|
-
t.string :image ,null: false
|
73
|
-
t.string :name ,null: false
|
74
|
-
t.text :introduction ,null: false
|
75
|
-
t.integer :price ,null: false
|
76
|
-
t.integer :category_id ,null: false
|
77
|
-
t.integer :status_id ,null: false
|
78
|
-
t.integer :charge_id ,null: false
|
79
|
-
t.integer :prefecture_id ,null: false
|
80
|
-
t.integer :ship_date_id ,null: false
|
81
|
-
t.timestamps
|
82
|
-
end
|
83
|
-
end
|
84
|
-
end
|
85
86
|
```
|
86
87
|
|
87
88
|
【エラー内容を調べた結果】
|
3
マークダウンの使い方を修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -62,7 +62,7 @@
|
|
62
62
|
end
|
63
63
|
end
|
64
64
|
|
65
|
-
|
65
|
+
|
66
66
|
```ここに言語を入力
|
67
67
|
<migrationファイル>
|
68
68
|
class CreateItems < ActiveRecord::Migration[6.0]
|
@@ -83,7 +83,6 @@
|
|
83
83
|
end
|
84
84
|
end
|
85
85
|
```
|
86
|
-
```
|
87
86
|
|
88
87
|
【エラー内容を調べた結果】
|
89
88
|
current_scopeメソッドが定義されていない、というエラーであるようでしたが、current_scopeメソッドを検索してもそれらしいものはなく、どのように定義するのか教えていただけますでしょうか?
|
2
マークダウンの使い方を修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -35,6 +35,7 @@
|
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
+
```ここに言語を入力
|
38
39
|
<Item.rb>
|
39
40
|
class Item < ApplicationRecord
|
40
41
|
extend ActiveHash::Associations::ActiveRecordExtensions
|
@@ -61,6 +62,8 @@
|
|
61
62
|
end
|
62
63
|
end
|
63
64
|
|
65
|
+
```
|
66
|
+
```ここに言語を入力
|
64
67
|
<migrationファイル>
|
65
68
|
class CreateItems < ActiveRecord::Migration[6.0]
|
66
69
|
def change
|
@@ -80,6 +83,7 @@
|
|
80
83
|
end
|
81
84
|
end
|
82
85
|
```
|
86
|
+
```
|
83
87
|
|
84
88
|
【エラー内容を調べた結果】
|
85
89
|
current_scopeメソッドが定義されていない、というエラーであるようでしたが、current_scopeメソッドを検索してもそれらしいものはなく、どのように定義するのか教えていただけますでしょうか?
|
1
アドバイスありがとうございます。言語部分・エラー内容で困っている部分を修正しました。
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
商品出品機能実装中に発生した<undefined method `current_scope' for Charge:Class>のエラーを解決したい
|
body
CHANGED
@@ -4,15 +4,89 @@
|
|
4
4
|

|
5
5
|
|
6
6
|
|
7
|
+
```ここに言語を入力
|
8
|
+
<items_controller.rb>
|
9
|
+
class ItemsController < ApplicationController
|
7
|
-
|
10
|
+
before_action :move_to_signed_in, except: [:index]
|
11
|
+
def index
|
12
|
+
@item = Item.all
|
13
|
+
end
|
8
14
|
|
15
|
+
def new
|
16
|
+
@item = Item.new
|
17
|
+
end
|
9
18
|
|
10
|
-
NomethodErrorということなので定義されていない[current_scope]なるものがある、
|
11
|
-
ということなのかと理解したのですが、どこにもその記述はしておらず、
|
12
|
-
これまではこのエラー該当箇所の記述でこのエラーが出たことがなかったので路頭に迷って
|
13
|
-
|
19
|
+
def create
|
14
|
-
いじろうにもcurrent_scopeが何かもわからずにいるのでご教示いただけますと幸いです。
|
15
|
-
|
20
|
+
@item = Item.new(item_params)
|
21
|
+
|
22
|
+
@item.save
|
23
|
+
redirect_to root_path
|
24
|
+
end
|
16
25
|
|
26
|
+
private
|
27
|
+
def move_to_signed_in
|
28
|
+
unless user_signed_in?
|
29
|
+
redirect_to '/users/sign_in'
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def item_params
|
34
|
+
params.require(:item).permit(:name, :image, :introduction,:price,:category_id,:status_id,:charge_id,:prefecture_id,:ship_date_id).merge(user_id: current_user.id)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
<Item.rb>
|
39
|
+
class Item < ApplicationRecord
|
40
|
+
extend ActiveHash::Associations::ActiveRecordExtensions
|
41
|
+
belongs_to :category
|
42
|
+
belongs_to :status
|
43
|
+
belongs_to :charge
|
44
|
+
belongs_to :prefecture
|
45
|
+
belongs_to :ship_date
|
46
|
+
has_one_attached :image
|
47
|
+
belongs_to :user
|
48
|
+
has_one :buy_record
|
49
|
+
|
50
|
+
|
51
|
+
with_options presence: true do
|
52
|
+
validates :image
|
53
|
+
validates :name
|
54
|
+
validates :introduction
|
55
|
+
validates :price
|
56
|
+
validates :category_id, numericality:{ other_than: 1 }
|
57
|
+
validates :status_id, numericality:{ other_than: 1 }
|
58
|
+
validates :charge_id, numericality:{ other_than: 1 }
|
59
|
+
validates :prefecture_id, numericality:{ other_than: 1 }
|
60
|
+
validates :ship_date_id, numericality:{ other_than: 1 }
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
<migrationファイル>
|
65
|
+
class CreateItems < ActiveRecord::Migration[6.0]
|
66
|
+
def change
|
67
|
+
create_table :items do |t|
|
68
|
+
t.references :user ,null: false ,foreign_key: true
|
69
|
+
t.string :image ,null: false
|
70
|
+
t.string :name ,null: false
|
71
|
+
t.text :introduction ,null: false
|
72
|
+
t.integer :price ,null: false
|
73
|
+
t.integer :category_id ,null: false
|
74
|
+
t.integer :status_id ,null: false
|
75
|
+
t.integer :charge_id ,null: false
|
76
|
+
t.integer :prefecture_id ,null: false
|
77
|
+
t.integer :ship_date_id ,null: false
|
78
|
+
t.timestamps
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
```
|
83
|
+
|
84
|
+
【エラー内容を調べた結果】
|
85
|
+
current_scopeメソッドが定義されていない、というエラーであるようでしたが、current_scopeメソッドを検索してもそれらしいものはなく、どのように定義するのか教えていただけますでしょうか?
|
86
|
+
@item.saveの部分を消してみたりしましたが、出品ボタンを押した後、出品情報が保存されないという状態になってしまったので、やはりこのエラーを解決しなければいけないと考えております。
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
17
91
|

|
18
92
|
ここにより詳細な情報を記載してください。
|