codeplant/simple-navigation

The rails generation is up to date? What about the docs?

NicolasWebDev opened this issue · 1 comments

Hi,

When generating the configuration in a rails 4 app with simple-navigation 4.0.3, the generated config does not seem to work.

For example I have this line:

primary.item :key_3, 'Admin', url, class: 'special', if: -> { current_user.admin? }

In this case the class does not get applied (using all the time the default renderer, List).

The only way for me to get it to work was to write it in the form (I am not interested in the "if"):

primary.item :key_3, 'Admin', url, html: { class: 'special' }

I could not find anything about this "html" parameter in the documentation.

Also if I try to use the html parameter in an item which will be passed a submenu, well I can't figure out how to make it work.
The following snippet:

    primary.item :about, 'About', html: { class: 'nav-link' } do |sub_nav|
      sub_nav.item :who_are_we, 'Who are we?', page_path('who_are_we'),
        html: { class: 'nav-link' }
    end

gives me the error:

undefined method `split' for {:html=>{:class=>"nav-link"}}:Hash

Thanks for your help.

For the second problem I had, I have found that it was because I was missing an argument to the item. Using

primary.item :about, 'About', '', html: { class: 'nav-link' } do |sub_nav|
    sub_nav.item :who_are_we, 'Who are we?', page_path('who_are_we'),
        html: { class: 'nav-link' }
end

works alright.

Still unsure that the rails generator is really up to date, and I think the html argument may be better documented.