about summary refs log tree commit diff
path: root/app/models/favourite.rb
diff options
context:
space:
mode:
authoralpaca-tc <alpaca-tc@alpaca.tc>2017-04-17 22:54:33 +0900
committerEugen <eugen@zeonfederated.com>2017-04-17 15:54:33 +0200
commit630de52fdd93e7465d0fb9dac5f35db30a2545d2 (patch)
tree416935f23d0e73bd3f4fb032d7da88407bc3fa04 /app/models/favourite.rb
parentf8546ad5a21c840107d263acea0c051081af9c7b (diff)
Required foreign keys (#2003)
* Add `required: true` option to foreign column

* Fixes NoMethodError

```
> Favourite.new.valid?
NoMethodError: undefined method `reblog?' for nil:NilClass
```
Diffstat (limited to 'app/models/favourite.rb')
-rw-r--r--app/models/favourite.rb6
1 files changed, 3 insertions, 3 deletions
diff --git a/app/models/favourite.rb b/app/models/favourite.rb
index 41d06e734..32d54476b 100644
--- a/app/models/favourite.rb
+++ b/app/models/favourite.rb
@@ -3,14 +3,14 @@
 class Favourite < ApplicationRecord
   include Paginable
 
-  belongs_to :account, inverse_of: :favourites
-  belongs_to :status,  inverse_of: :favourites, counter_cache: true
+  belongs_to :account, inverse_of: :favourites, required: true
+  belongs_to :status,  inverse_of: :favourites, counter_cache: true, required: true
 
   has_one :notification, as: :activity, dependent: :destroy
 
   validates :status_id, uniqueness: { scope: :account_id }
 
   before_validation do
-    self.status = status.reblog if status.reblog?
+    self.status = status.reblog if status&.reblog?
   end
 end