Because in form_tag we don't define scope so all parameters comes in params
directry.
so you need to fix *item_params* method
*params.permit(:item_type)* to permit parameters
your's item_params method is written to permit this params structure
{item: {item_type: q}
On Friday, October 4, 2019 at 1:13:11 PM UTC+5:30, fugee ohu wrote:
>
> <%= form_tag new_item_path, :method => :get do %>
>
> <div class="field">
> <%= select_tag(:item_type, options_for_select(Item::ITEM_TYPES)) %>
> </div>
>
> <div class="actions">
> <%= submit_tag "New item" %>
> </div>
>
> ActionController::ParameterMissing in ItemsController#new param is
> missing or the value is empty: item
>
> In my controller I have the usual filter
> def item_params
> params.require(:item).permit(:item_type, :title, :item_id,
> item_ids: [])
> end
> ...
> Started GET "/items/new?item_type=General&commit=New+item&utf8=%E2%9C%93"
> for 127.0.0.1 at 2019-10-04 03:32:18 -0400
> Processing by ItemsController#new as HTML
> Parameters: {"item_type"=>"General", "commit"=>"New item", "utf8"=>"✓"}
> Completed 400 Bad Request in 2ms (ActiveRecord: 0.0ms)
>
>
>
> ActionController::ParameterMissing (param is missing or the value is
> empty: item):
>
> app/controllers/items_controller.rb:109:in `item_params'
> app/controllers/items_controller.rb:23:in `new'
> ...
>
--
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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/rubyonrails-talk/6851cc33-f928-433f-b75c-f54fea1d6582%40googlegroups.com.