It should be params.require(:order)
and not params.permit(:order)
Check this out in Rails Docs : Action Controller Parameters
Your code should look like:
params = ActionController::Parameters.new({
order: {
shipping_method: '03',
line_items_attributes: [{
sale_id: "12847",
qty: "12"
}]
}
})
and after that
params.require(:order).permit(
:shipping_method,
{
line_items_attributes: [
:sale_id,
:qty,
]
}
)
NOTE: You need to permit line_items_attributes
(Notice plural items) and NOT line_item_attributes
(Not singular item). (Assuming you have 1-M association
between Order
and LineItem
)