class ProductsController < ApplicationController
  before_action :set_product, only: [:show, :edit, :update, :destroy]
  
  # GET /products
  # GET /products.json
  def index
   
   # @search = Product.search(params[:search])
    
    #ransack
    @search = Product.search(params[:q])
    @products = @search.result.paginate(page: params[:page] , per_page: 10)
      
    # @products = Product.all
    
    # @products = @search.all
    
    #paginate
    #@product = Product.paginate(:page => params[:page], per_page: 10)
    #Product.paginate(:page => params[:page], per_page: 10)
    
  end

  # GET /products/1
  # GET /products/1.json
  def show
  end

  # GET /products/new
  def new
    @product = Product.new
  end

  # GET /products/1/edit
  def edit
  end

  # POST /products
  # POST /products.json
  def create
    @product = Product.new(product_params)

    respond_to do |format|
      if @product.save
        format.html { redirect_to @product, notice: 'Product was 
successfully created.' }
        format.json { render :show, status: :created, location: @product }
      else
        format.html { render :new }
        format.json { render json: @product.errors, status: 
:unprocessable_entity }
      end
    end
  end

  # PATCH/PUT /products/1
  # PATCH/PUT /products/1.json
  def update
    respond_to do |format|
      if @product.update(product_params)
        format.html { redirect_to @product, notice: 'Product was 
successfully updated.' }
        format.json { render :show, status: :ok, location: @product }
      else
        format.html { render :edit }
        format.json { render json: @product.errors, status: 
:unprocessable_entity }
      end
    end
  end

  # DELETE /products/1
  # DELETE /products/1.json
  def destroy
    @product.destroy
    respond_to do |format|
      format.html { redirect_to products_url, notice: 'Product was 
successfully destroyed.' }
      format.json { head :no_content }
    end
  end

  private
    # Use callbacks to share common setup or constraints between actions.
    def set_product
      @product = Product.find(params[:id])
    end

    # Never trust parameters from the scary internet, only allow the white 
list through.
    def product_params
      # params.fetch(:product, {})
      
        params.require(:product).permit(:title, :template, :price, :msrp, 
:enddate)
        
    end
    
    
    
    
end


Ok, that's my product controller...


On Friday, September 30, 2016 at 11:38:34 AM UTC-4, mode-x wrote:
>
> Pardon me its the update action code
>
> On 30 Sep 2016 4:31 p.m., "Emmanuel Abia" <abia...@gmail.com <javascript:>> 
> wrote:
>
>> Need the code in the controller edit action
>>
>> On 30 Sep 2016 4:03 p.m., "Joe Guerra" <jgu...@jginfosys.com 
>> <javascript:>> wrote:
>>
>>> Ok, here is my edit products page...
>>>
>>> <% if user_signed_in? %>  <!-- fix this change to admin user -->
>>>
>>> <h1>Editing Product</h1>
>>>
>>> <%= render 'form' %>
>>>
>>> <%= link_to 'Show', @product %> |
>>> <%= link_to 'Back', products_path %>
>>>
>>> <% else %>
>>>
>>>
>>>     <div class="alert alert-warning" role="alert">You must be signed in 
>>> as administrator to edit the products.</div>
>>>   
>>> <% end %> 
>>>
>>>
>>> here is my _form
>>>
>>> <%= simple_form_for(@product) do |f| %>
>>>   <%= f.error_notification %>
>>>
>>>
>>>  <!-- fix this -->
>>>  <div class = "field">
>>>     
>>>     <%= f.label :category %><br/>
>>>     
>>>     <%= f.collection_select :category, Category.all, :id, :name %>
>>>   </div>
>>>   <!-- fix this, it should save the category to the model -->
>>>   
>>>   <div class="form-inputs">
>>>     
>>>     <%= f.input :title %>
>>>     <%= f.input :template %>
>>>     <%= f.input :price %>
>>>     <%= f.input :msrp %>
>>>     <%= f.input :enddate %>
>>>     <%= f.input :draft %>
>>>   
>>>  
>>>   </div>
>>>
>>>   <div class="form-actions">
>>>     <%= f.button :submit %>
>>>   </div>
>>> <% end %>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Friday, September 30, 2016 at 10:58:34 AM UTC-4, mode-x wrote:
>>>>
>>>> You need to show the code for your edit
>>>>
>>>> On 30 Sep 2016 3:51 p.m., "Joe Guerra" <jgu...@jginfosys.com> wrote:
>>>>
>>>>> I've got two tables in my Postgres database: categories and products.
>>>>>
>>>>> I have a one to many relationship defined, one category can have many 
>>>>> products.
>>>>>
>>>>>
>>>>> I then created a reference and migrated the tables.
>>>>>
>>>>> AddCategoryRefToProducts category:references
>>>>>
>>>>>
>>>>> I have this in my models.
>>>>>
>>>>> #product.rb
>>>>> belongs_to :category
>>>>> #category.rb
>>>>> has_many :products
>>>>>
>>>>>
>>>>> I've fixed the _form to include the category id.   But when I edit or 
>>>>> update the form, the category id is not written to the product table.
>>>>>
>>>>>
>>>>> I think I'm missing a step somewhere, not sure where.
>>>>>
>>>>>
>>>>> Any suggestions?
>>>>>
>>>>>
>>>>> Thanks,
>>>>>
>>>>> Joe
>>>>>
>>>>> -- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "Ruby on Rails: Talk" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to rubyonrails-ta...@googlegroups.com.
>>>>> To post to this group, send email to rubyonra...@googlegroups.com.
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/d/msgid/rubyonrails-talk/8c62b187-a01f-4da3-8051-8772215ebb3d%40googlegroups.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/rubyonrails-talk/8c62b187-a01f-4da3-8051-8772215ebb3d%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Ruby on Rails: Talk" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to rubyonrails-ta...@googlegroups.com <javascript:>.
>>> To post to this group, send email to rubyonra...@googlegroups.com 
>>> <javascript:>.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/rubyonrails-talk/6779741f-a256-422b-8aee-ace7a38cfc91%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/rubyonrails-talk/6779741f-a256-422b-8aee-ace7a38cfc91%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/b4d9af8e-7e31-4d0a-96ef-1ae29d70e34b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to