# Generated from rails_source_path-1.0.3.gem by gem2rpm -*- rpm-spec -*- %global gem_name rails_source_path Name: rubygem-%{gem_name} Version: 1.0.3 Release: 1%{?dist} Summary: Remember the route prior to the current controller and redirect/use later License: MIT URL: https://github.com/xiuzhong/rails_source_path Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem BuildRequires: ruby(release) BuildRequires: rubygems-devel BuildRequires: ruby # BuildRequires: rubygem(rspec) >= 3.0 # BuildRequires: rubygem(rspec) < 4 # BuildRequires: rubygem(rspec-rails) BuildArch: noarch %description Remember the route prior to the current controller and redirect/use later In rails project, one common case is one form used to create or update an object can be routed from more than one page, when the object is created or updated, it should be redirected back to wherever it came from. Rails redirect_back doesn't work in this case because: 1. redirect_back in create/update action will go back to new/edit form. 2. usually the form is re-rendered if any error exists, which basically breaks the redirect_back. rails-source-path can hanlde this by explicily specifying the entry actions and remember the previous route in session store, hence can be used in the whole controller. Also a helper method is providered so it can be used in view like 'back' or 'cancel' button. %package doc Summary: Documentation for %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description doc Documentation for %{name}. %prep %setup -q -n %{gem_name}-%{version} %build # Create the gem as gem install only works on a gem file gem build ../%{gem_name}-%{version}.gemspec # %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir # by default, so that we can move it into the buildroot in %%install %gem_install %install mkdir -p %{buildroot}%{gem_dir} cp -a .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ %check pushd .%{gem_instdir} # rspec spec popd %files %dir %{gem_instdir} %exclude %{gem_instdir}/.gitignore %exclude %{gem_instdir}/.travis.yml %license %{gem_instdir}/LICENSE.txt %{gem_instdir}/bin %{gem_libdir} %exclude %{gem_cache} %{gem_spec} %files doc %doc %{gem_docdir} %exclude %{gem_instdir}/.rspec %{gem_instdir}/Gemfile %doc %{gem_instdir}/README.md %{gem_instdir}/Rakefile %{gem_instdir}/rails_source_path.gemspec %changelog * Tue Sep 14 2021 mockbuilder - 1.0.3-1 - Initial package