spree | Open Source multi-language/multi-currency/multi-store | Ecommerce library
kandi X-RAY | spree Summary
kandi X-RAY | spree Summary
Spree is a headless open source e-commerce platform for global brands. It was started by Sean Schofield and is now developed by Spark Solutions. We're open to contributions.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
- Remove a shipping item from the given package
- Declare a preference for a given preference
- Applies users to the user
- Retrieve a value from the cache if it exists
- Sets the value of a single option .
- Returns an array of eligible rules for the given rule .
- Persist the given preference .
- Delete this preference .
- Creates a new image for the specified image .
- Creates an image .
spree Key Features
spree Examples and Code Snippets
Community Discussions
Trending Discussions on spree
QUESTION
In my model, I have multiple has_one associations like
...ANSWER
Answered 2022-Mar-24 at 08:34Try extracting the common attributes, something like
QUESTION
Trying to integrate v3 intents , followed the readme but i keep getting thoses errors on js side :
...ANSWER
Answered 2022-Jan-27 at 03:20i've posted an issue to the gem's repo.
To make it works i had to add routes in my main app's route.rb :
post '/stripe/confirm_payment', to: 'stripe#confirm_payment'
# payment intents routes:
post '/stripe/create_intent', to: 'solidus_stripe/intents#create_intent'
post '/stripe/create_payment', to: 'solidus_stripe/intents#create_payment'
# payment request routes:
post '/stripe/shipping_rates', to: 'solidus_stripe/payment_request#shipping_rates'
post '/stripe/update_order', to: 'solidus_stripe/payment_request#update_order'
would not recommend this gem .
QUESTION
I have a Ruby on Rails web application (deployed on Google App Engine) using Spree/Solidus core, which is connected to Google Cloud Storage for file storage. We have an admin dashboard for our app where we can upload images related to objects and we have a webpage in which we show those images. The images show up at first when we recently deployed the project, but they fail to show up after a while! We get the following 400 error for the images shown on the console:
...ANSWER
Answered 2021-Oct-18 at 15:02There are multiple things you can check in order to make sure your images are correctly being allowed to be shared publicly. The first one would be to enable Bucket Uniform Level Access. This type of access is general for all the objects in your bucket instead of per-object ACLs, and the objects should be set for public access. The next thing to verify is whether the image URLs are being correctly created for public viewing, according to the documentation, the URLs should be in this format:
https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME
If your URL has a long string of data, it could be that you are using signed URLs on your website. These URLs have an expiration date, which could explain why they seem to have worked at first and then they stopped showing up for the public. In the ActiveStorage documentation, it says that the config/storage.yml
file will default to private access by creating signed URLs:
By default, Active Storage assumes private access to services. This means generating signed, single-use URLs for blobs. If you'd rather make blobs publicly accessible, specify public: true in your app's config/storage.yml
This related SO thread also talks about URLs expiring and Signed URLs.
QUESTION
I am building a Rails/Spree eCommerce app, and using the test repo, which sets up with docker compose (bin/setup) and Postgres, I get error that is wrong version of docker-compose but in fact I have the same version installed see bash output below.
...ANSWER
Answered 2021-Sep-02 at 07:37There 2 concepts here:
- docker-compose version:
This means the version of docker-compose
script itself, e.g. 1.29.2
you have.
- Compose file format version:
This means the file format version defined in docker-compose.yaml
, e.g 3.8
, so for you, you need to use file format version
something like version: "3"
.
Details refers here
QUESTION
I'm new in ruby on rails and Solidus. I created my project by following this guide: https://guides.solidus.io/developers/getting-started/first-time-installation.html
Then, I want to change my default currency from "USD" to "AUD" in config/initializers/spree.rb
( config.currency = "AUD"
)
Then, when I go to http://localhost:3000/admin/products. It shows (* other pages work normal)
Please help.(Tried restart server but same)
Ruby version: ruby '3.0.2'
Solidus version: "solidus", "~> 3.0"
Rails 6.1.4.1
spree.rb
...ANSWER
Answered 2021-Aug-28 at 12:21Solved by using the following code: Spree::Price.update_all(currency: 'AUD')
QUESTION
Background & Problem
I am trying to web scrape links to articles from a news webpage. I've done a nested find_all and I've managed to get the 'a href' sections, but this also includes info I don't require like article name.
What I need Help with
I've searched several articles on SO such as this. But none seem to work for my specific case. Does Anyone know how I can create a list of just news article links?
My code so far
...ANSWER
Answered 2021-May-25 at 05:23Try this,
QUESTION
I have a solution that follows the paradigm of Spree/Solidus, which encapsulate permitted params. It is not in my power to change it but to follow suit. However, I am having a problem I cant reproduce which is undefined local variable or method `permitted_task_attributes’ for #Api::V1::TasksController:0x0000000000b7c0.
Below is the code:
controller/api/v1/task_controller.rb
...ANSWER
Answered 2021-Apr-21 at 13:17So, I have moved strong_parameters.rb out of /lib
and moved it to controller concerns. I alos moved permitted_atrributes.rb out of /lib
directory too. I then include strong_parameters.rb in the tasks_controller.rb e.g. include StrongParameters
.
The problem is that the controller didn't recognize the permitted_task_attributes
method in the strong_parameters.rb and it throws an error.
QUESTION
As far as I know I can use three types of api with Spree. I only take the products as example.
- http://127.0.0.1:3000/api/products
- http://127.0.0.1:3000/api/v1/products
- http://127.0.0.1:3000/api/v2/products
I don't see any differences in the response between above 3 apis. It is so confusing.
Another confusion is when it comes to multi store Spree site, there is another version of api 4. http://127.0.0.1:3000/api/v2/storefront/products It returns the products only registered in current storefront.
Suppose I want to retrieve the products which belongs to other stores? Some suggests to use store_id= parameter but it doesn't work at all.
And how can I get the store where the products belong to from the 1-3 api result. Anybody can help?
I use these spree versions, which I don't think much related to the issue. gem 'spree', '3.7.2' gem 'spree_gateway', '3.7.4' gem 'spree_core', '3.7.2' gem 'spree_api', '3.7.2'
...ANSWER
Answered 2021-Mar-15 at 17:26With Spree 4.2 Multi-Store support is out of the box. Each store has its own URL which you set in Admin Panel UI, eg.
- Store A: canada.example.com
- Store B: europe.example.com
So if you want to query products from Store A you need to use:
QUESTION
I have this simple Apache vhost, it's the only one enabled:
...ANSWER
Answered 2021-Feb-26 at 10:34Found the problem.
Rails recently started sending a Link
header with all assets so the browser can preload them. See this PR.
The problem is that in development that header can get pretty big (as was the case with my admin page). Puma worked fine with the giant header, but Apache was truncating the headers to 8 KiB (of which 7.58 was the truncated Link
header) and not sending a complete response, hence the missing Content-Type
.
I simply disabled the feature in Rails (see this PR) by adding this to config/environments/development.rb
:
QUESTION
I have spree
gem installed successfully. I don't need spree_frontend
. Here is the Gemfile
ANSWER
Answered 2021-Jan-10 at 18:24As the errors states, Spree::BaseController
is not defined within your app - it is defined in the spree-core
gem. If you re-create the filepath to the base controller locally, that is app/controllers/spree/
, and copy and paste the code from the controller into a local base_controller.rb
, you can edit it and add custom functionality.
Note that it will still inherit from the ApplicationController
, but you can place any of the code you wanted to put in the ApplicationController
into here and have your classes inherit from Spree::BaseContoller
and the effect will be the same.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install spree
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page