标签: helpers

cakephp从帮助程序中访问视图属性/变量

是否有合理的方法来访问视图属性"passedArgs"(或任何类似的)

/* view */
$this->passedArgs
Run Code Online (Sandbox Code Playgroud)

从帮助者手中?

我很乐意自定义帮助程序的_construct()或自定义app_helper ...但我不想$this->passedArgs在每个视图或用法上都传递给帮助程序.

php cakephp views helpers

12
推荐指数
1
解决办法
1万
查看次数

在ruby/rails中将1200转换为1.2K

我认为在ruby或rails中有一个方法可以做到这一点,但我不记得在哪里找到它或如何搜索它,所以我希望stackoverflow的集体智慧可能有所帮助.我不介意写一个方法来做到这一点,但我相信有人有更好的解决方案.

ruby ruby-on-rails helpers ruby-on-rails-3

12
推荐指数
3
解决办法
3499
查看次数

rails:控制器中包含的模块的方法在视图中不可用

奇怪的是 - 我有这样的身份验证模块lib/:

module Authentication
  protected

  def current_user
    User.find(1)
  end

end
Run Code Online (Sandbox Code Playgroud)

在ApplicationController中,我包含了这个模块和所有帮助程序,但方法current_user在控制器中可用,但不在视图中:(如何使其工作?

namespaces ruby-on-rails helpers

11
推荐指数
1
解决办法
8746
查看次数

通过Rails中的Polymorphic Type查找所有内容?

有没有办法在Rails中找到特定多态类型的所有多态模型?所以如果我有Group,Event和Project都有一个声明,如:

has_many :assignments, :as => :assignable

我可以这样做:

Assignable.all

...要么

BuiltInRailsPolymorphicHelper.all("assignable")

那样就好了.

编辑:

...这样Assignable.all返回[Event, Group, Product](类数组)

ruby-on-rails helpers polymorphic-associations

10
推荐指数
1
解决办法
5014
查看次数

在Rails帮助器的类中使用link_to

我有一个使用下面结构的rails帮助器,但是当我使用它时,我得到了消息

undefined method 'link_to'
Run Code Online (Sandbox Code Playgroud)

助手安排如下:

module MyHelper

  class Facet

    def render_for_search
      link_to("Value", params)
    end
  end

  class FacetList
    attr_accessor :facets

    def initialize
      #Create facets
    end

    def render_for_search
      result = ""
      facets.each do |facet|
        result << facet.render_for_search
      end
      result
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails class helpers link-to

9
推荐指数
2
解决办法
7011
查看次数

Rails:帮助程序中的控制器方法或实例变量

我正在使用有点宝石,并希望能够访问我的帮助器方法中的有点API(由视图和邮件程序调用以生成URL).

我在ApplicationController中的this方法中启动了一个API连接:

(有没有更适合做BTW的地方?)

class ApplicationController < ActionController::Base
  before_filter :bitly_connect

  def bitly_connect
    Bitly.use_api_version_3
    @bitly ||= Bitly.new(APP_CONFIG['bitly_username'], APP_CONFIG['bitly_api_key'] )
  end
end
Run Code Online (Sandbox Code Playgroud)

默认情况下,我无法访问@bitly我的助手.你能建议一种方法来实现这一目标吗?

我找到的唯一相关线程没有帮助: Rails 3和Helper中的Controller Instance Variables

谢谢.

ruby-on-rails helpers

9
推荐指数
1
解决办法
9880
查看次数

将类添加到生成的表单中的正确button_to语法是什么?

我正在尝试将一个类应用于Rails 3中button_to生成的表单.

:class选项设置提交按钮的类,以便文档告诉我们:form_class将类应用于表单.

例如

<%= button_to 'x', user_contact_path(@user, contact), :method => :delete, :form_class => "delete" %>
Run Code Online (Sandbox Code Playgroud)

这只是将属性添加form_class="delete"到按钮元素.我尝试过使用各种组合:html_options等等.

有人知道怎么做吗?

css ruby-on-rails actionview helpers ruby-on-rails-3

9
推荐指数
1
解决办法
2万
查看次数

在Magento中调用辅助类

我正在尝试在Magento中创建一个自定义帮助程序模块,但是当我从页面调用它时出现以下错误:

Warning: include(Mage/SEO/Helper/Data.php) [function.include]: failed to open stream: No such file or directory  in /home/strailco/1stclassholidays.com/html/lib/Varien/Autoload.php on line 93
Run Code Online (Sandbox Code Playgroud)

从模板我使用以下来调用帮助程序模块:

<?php echo Mage::helper('SEO')->getFullProductUrl($product); ?>
Run Code Online (Sandbox Code Playgroud)

辅助模块设置在:

/app/code/local/SEO/Fullurl/Helper/Data.php
/app/code/local/SEO/Fullurl/etc/config.xml
Run Code Online (Sandbox Code Playgroud)

Data.php调用函数:

<?php 

class getFullProductUrl {

public function getFullProductUrl( $product )
{
}
Run Code Online (Sandbox Code Playgroud)

我的config.xml设置如下:

<?xml version="1.0"?>
<config>
     <global>
        <helpers>
        <SEO>
        <class>getFullProductUrl</class>
        </SEO>
        </helpers>
   </global>
</config>
Run Code Online (Sandbox Code Playgroud)

我认为问题是我设置config.xml的方式,但我正在努力找出正确的方法.

我会非常感谢你能给予的任何帮助.我已经在这方面工作了几天但是无法让它工作.

非常感谢

贾森

php magento helpers e-commerce

9
推荐指数
1
解决办法
4万
查看次数

在把手中的助手内渲染模板

大家好!

因为似乎没有答案:通过把手部分传递变量,我正在努力解决这个问题.因此,我们的想法是注册一个辅助函数,该函数使特定模板具有可能的值.一些代码使得理解更好.

这是我如何调用我的助手:

<div>
    {{myHelper}}
</div>
Run Code Online (Sandbox Code Playgroud)

这个帮助器注册了这个小代码:

hbs.registerHelper(name, function (args) {
    args = args || {};
    var template = hbs.compile(fs.readFileSync(__dirname + '/' + file, 'utf8'));
    return template(args);
});
Run Code Online (Sandbox Code Playgroud)

我把这个snippiet放到一个循环中,一次注册不同的帮助器.这意味着给出了'name'和'file'.

好的,现在我可以做这样的事情:

// 'values' could be something like this:

var values = { headline: 'HEADLINE' }

<div>
    {{myHelper values}}
</div>
Run Code Online (Sandbox Code Playgroud)

在帮助器中,我现在可以测试是否给出了某些值:

// myHelper template

<div>
    {{#if headline}}
    <h1>{{headline}}</h1>
    {{/if}}
    <p>Lorem ipsum</p>
</div>
Run Code Online (Sandbox Code Playgroud)

这个小小的解决方法适合我,但有一个问题.如上所述注册助手,返回纯HTML转义字符串.因此,调用帮助程序不会输出呈现的HTML代码段.它将HTML作为转义字符串输出.

你有没有人知道如何让我的代码片段将HTML作为HTML返回?

/帕斯卡尔

html rendering templating helpers handlebars.js

9
推荐指数
2
解决办法
1万
查看次数

Rubymine不了解路径助手

我正在使用Rubymine(5.4.3.2.1)进行Hartl的RoR教程,我遇到了路径助手的麻烦.root_path工作得很好,但rubymine说'找不到xxxx_path'用于控制器中的其他操作.

Rspec和Rails服务器与那些相同的路径助手一起工作得很好!!

我的routes.rb:

SampleProject::Application.routes.draw do
  get "users/new"

  root 'static_pages#home'
  match '/signup',  to: 'users#new', via: 'get'
  match '/help', to: 'static_pages#help', via: 'get'
  match '/about', to: 'static_pages#about', via: 'get'
  match '/contact', to: 'static_pages#contact', via: 'get'
end
Run Code Online (Sandbox Code Playgroud)

我也尝试使用get而不是匹配,但这没有帮助.

routes ruby-on-rails rubymine helpers

9
推荐指数
1
解决办法
1554
查看次数