Wallet payment source FK targets `spree_users` after user class change
Nobody has claimed this yet.
- Dominant language
- Ruby
- Stars
- 5.3k
- Forks
- 1.4k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 62
Description
Solidus Version:
2.10.2
To Reproduce
- After installing Solidus, run
db:seedto get the default values installed and add a sample product to the store. - Add the
solidus_auth_devisegem and follow the instructions for setting Spree.user_class here: https://guides.solidus.io/developers/users/custom-authentication.html - Drop the spree_users table from the DB since you'll be using your existing User class.
- Login with a test user, add the sample product to your cart and begin the checkout process. At the confirmation page, click 'Place Order' and you'll be presented with a
SQLException: no such table: main.spree_userserror.
Current behavior
The order should be completed successfully. Instead, an SQLException: no such table: main.spree_users error is thrown.
Expected behavior
The user should be able to successfully checkout / purchase their cart items.
Desktop (please complete the following information):
- OS: MacOS Catalina 10.15.6
- Chrome
- Version 84.0.4147.105
Additional context
Log output is available here: https://gist.github.com/paulsingh/ab49d1977219971f72430351ffecc875
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue by running db:seed, configuring solidus_auth_devise with a custom Spree.user_class, removing spree_users, and placing an order through checkout. Inspect the linked log and trace the wallet payment source foreign key that still targets spree_users; done means checkout completes successfully without that table.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rails, ruby
- Domain
- backend, database
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100