对这样一个简单的问题道歉,但由于我的RoR知识基本上不存在,我无法在数小时后自己解决.在我正在使用的Rails应用程序中,已使用导航助手突出显示活动菜单:
def nav_link(link_text, link_path, ico_path)
class_name = current_page?(link_path) ? 'active' : nil
content_tag :li do
link_to(link_path, class: class_name) do
image_tag("icons/#{ico_path}.svg") + content_tag(:span, link_text)
end
end
end
Run Code Online (Sandbox Code Playgroud)
情况已经改变,current_page?不再是一个可行的选择,因为路由现在在前端处理.有没有办法通过检索,例如,当前的URL并检查它来实现相同的功能link_path?我尝试了很多与不同助手的事情request.original_url,但无济于事.
我很难理解什么似乎是一个非常基本的操作。我想创建两个结构,其中一个结构将保存另一个结构的切片。这是一个说明问题的简单示例:
// Post structure
type Post struct {
User string `bson:"user"`
Body string `bson:"body"`
}
// User structure
type User struct {
Name string `bson:"name"`
Posts []Post `bson:"posts"`
}
func (u *User) appendPost(post Post) []Post {
u.Posts = append(u.Posts, post)
return u.Posts
}
func main() {
p1 := Post{User: "Jane", Body: "First Jane's post"}
u := User{Name: "Jane"}
users := []User{}
users = append(users, u)
for _, user := range users {
user.appendPost(p1)
}
// [{Jane []}]
fmt.Println(users)
}
Run Code Online (Sandbox Code Playgroud)
此代码不会产生错误,也不会产生任何影响。如果我用这样的预定义帖子初始化并附加用户: …