草庐IT

Android View 和 View 组

全部标签

ruby-on-rails - Ruby on Rails 中一个共享 View 的两个 Controller

我有两个Controller分别用于两个模型,例如照片和类别。index和show方法在每个Controller中都非常相似,并且View是相同的。两个模型共享View的最佳方法是什么?我有两个选择:使用助手。在助手中将放置View的代码,并从每个View(照片/View和类别/View)调用助手在每个View中使用局部View。我认为这是一个更干净的解决方案,但在编写此解决方案时,我的脑海中出现了巨大的DRY。因此,我有来自两个模型的两个Controller,每个Controller都位于并公开一个@photo对象(照片Controller包含所有照片,类别Controller仅包含

ruby-on-rails - rails 4 : Flash message persists for the next page view

我在布局中使用以下代码来显示两种类型的即显消息:它们都工作正常,但无论何时触发一个,它仍会出现一次额外的页面View。我没有使用任何缓存gem。为什么会这样?我该如何解决? 最佳答案 使用flash.now而不是flash.flash变量旨在在redirect之前使用,并且它会在一个请求的结果页面上持续存在。这意味着如果我们不redirect,而不是简单的render一个页面,flash消息将持续存在两个请求:它出现在呈现的页面上但仍在等待重定向(即第二个请求),因此如果您单击链接,消息将再次出现。为了避免这种奇怪的行为,在渲染而不

ruby - Sinatra 子目录 View

我希望能够从./views的子目录(例如./views/admin)中获取SinatraView。我知道您可以像这样设置View:set:views,Proc.new{File.join(root,"templates")}但是我怎样才能只对文件的一部分进行设置呢? 最佳答案 我不确定你到底在问什么,但你可以通过这样做在views/admin中呈现一个View:erb:"admin/report"如果您询问如何在调用erb:report时自动查看views的子目录,我不知道该怎么做,我不知道不认为您想要(如果不同目录中的两个View

ruby-on-rails - 不要在 Rails 生成 Controller 上创建 View 文件夹

当您运行railsgeneratecontroller时,是否有一种方法可以使用通常的生成器配置来关闭View文件夹和操作模板的创建?我在任何地方都找不到选项和代码here没有给我任何指示。无论如何,我们可能会在某个时候为我们的API构建我们自己的Controller/资源生成器,但我很好奇是否有办法同时消除这种烦恼。 最佳答案 这不是一个有据可查的功能,但请尝试在命令中添加--skip-template-engine(别名--no-template-engine)选项。railsgeneratecontrollerfoobar--

ruby-on-rails - Rails 在 View 中将字符串与变量连接的最佳方法

本质上,我正在尝试执行此比较request.fullpath=="/contacts/"+current_user.id将字符串与变量连接起来以执行这样的比较的最佳方法是什么? 最佳答案 您可以将其插入为request.fullpath=="/contacts/#{current_user.id}" 关于ruby-on-rails-Rails在View中将字符串与变量连接的最佳方法,我们在StackOverflow上找到一个类似的问题: https://sta

ruby-on-rails - rails : How to determine controller/action in view

这是我的部分表格:{:multipart=>true}do|d|%>'Uploadlogo',:required=>false%>'Image,:required=>false',:style=>'margin-bottom:2px'%>'BilledURL',:required=>false%>如果操作是编辑,我想改为显示:{:multipart=>true}do|d|%>'Uploadlogo',:required=>false%>'Image,:required=>false',:style=>'margin-bottom:2px'%>'BilledURL',:required=

ruby-on-rails - 限制 View 中的字符/单词 - ruby​​ on rails

我正在用RubyonRails构建的一个非常简单的博客应用程序的主页上显示最近的评论。我想限制从评论表的“正文”列中显示的字符数。我假设我可以在的代码末尾添加一些内容,但我还不知道那会是什么,因为我是Ruby和Rails的新手。这是我在/views/posts/index.html.erb文件中的代码:'created_atDESC',:limit=>5).eachdo|comment|-%>commentedonago 最佳答案 试试truncate查看助手80)%> 关于ruby-o

ruby-on-rails - 我如何在不同的 View 中使用助手

我目前正在使用refinerycms。我在app/helpers/admin/中创建了一个引擎和一些助手。现在我也想在我的前端View(即app/views/myapp/index)中使用这些助手。但我不能...未定义的方法错误。除了将整个内容复制到app/helpers/之外,我还需要做什么?助手看起来像这样moduleAdminmodulemyHelperdefsomefuncendendend那么可以在Admin模块之外使用somefunc吗? 最佳答案 在View中包含来自非标准路径的助手的“Rails方式”是在Contro

ruby - 将参数传递给 erb View

我正在尝试使用Ruby和Sinatra将参数传递给erbView。例如,我可以这样做:get'/hello/:name'do"Hello#{params[:name]}!"end如何将:name传递给View?get'/hello/:name'doerb:helloend如何读取view/hello.erb中的参数?谢谢! 最佳答案 只需将:locals传递给路由中的erb()即可:get'/hello/:name'doerb:hello,:locals=>{:name=>params[:name]}end然后在views/hell

ruby-on-rails - View 中 .html.erb 中的 else 语句

在Rails中,我经常遇到这样的情况,在View中我会做类似的事情123somethingelse看起来有点乱。这是处理View的可接受方式吗? 最佳答案 除非您能想出一种方法将其重写为辅助方法,否则您基本上只能坚持使用它,看起来有点丑陋。ERB就是这样,因为它旨在成为将Ruby注入(inject)其他纯文本模板的最小方式,而不是必须流线型或优雅的东西。好消息是语法高亮编辑器通常会让你的ERBblock在视觉上与您的HTML不同,因此可以显着提高可读性。这也是为什么其他表示形式如HAML的原因已经创建了语法不那么困惑的地方:-ifs