标签: scopes

Laravel全球范围认证

我在用户模型中创建了一个anonimus全局范围,如下所示,以便仅在前端获得公共用户:

protected static function boot()
{
    parent::boot();

    static::addGlobalScope('is_public', function(Builder $builder) {
        $builder->where('is_public', '=', 1);
    });
}
Run Code Online (Sandbox Code Playgroud)

但是...当我需要在后端执行登录时,我当然需要检查非公共用户,因此我需要排除全局范围。

是否可以使用laravel的默认AuthController?

非常感谢!!

authentication scopes laravel

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

获取GET请求参数到@ViewScoped bean

我有一个(请求范围的)列表,用户可以从中选择"PQ"(链接列表).单击或以其他方式输入浏览器时,将显示每个PQ的主页面.每个PQ的页面都是表格

http://localhost:8080/projectname/main.jsf?id=2

这是PQ bean的第一个:

@Named
@ViewScoped
public class PqHome implements Serializable
{
    @PersistenceContext(unitName="...")
    private EntityManager em;

    private Integer id;
    private PQ instance;

    @PostConstruct
    public void init()
    {
        System.out.println("ID is " + id); // ID from URL param

        instance = em.find(PQ.class, id);       
    }

    public Integer getId()
    {
        return id;
    }

    public void setId(Integer id)
    {
        this.id = id;
    }

    public PQ getInstance()
    {
        return instance;
    }
}
Run Code Online (Sandbox Code Playgroud)

这是main.xhtml:

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                ...>
  <ui:define name="metadata">
    <f:metadata>
      <f:viewParam name="id" value="#{pqHome.id}">
        <f:convertNumber integerOnly="#{true}" />
      </f:viewParam> …
Run Code Online (Sandbox Code Playgroud)

java javabeans cdi scopes jsf-2

3
推荐指数
2
解决办法
8810
查看次数

获取每个对象的平均评分

对大多数人来说可能是一个简单的问题,但仍然可以掌握数据库查询.我有可以给出评级的食谱,我现在想要收集这些评级并获得平均评级.食谱有很多评级(我认为这是正确的关系)

我已经创建了这样的范围

class Recipe < ActiveRecord::Base
belongs_to :user
has_many :ratings
attr_accessible :country, :description, :name
scope :average_rating,includes(:ratings).group('recipe_id').where('AVG(ratings.rating)');
end
Run Code Online (Sandbox Code Playgroud)

评级模型

class Rating < ActiveRecord::Base
has_many :users
attr_accessible :ratings, :recipe_id, :user_id
end 
Run Code Online (Sandbox Code Playgroud)

我的评级还应包括has_many:食谱吗?

在我的控制器中,我创建了一个实例变量来显示结果

@avgrating = Recipe.average_rating
Run Code Online (Sandbox Code Playgroud)

但坚持如何让这个在我的视图中显示在这个块中,例如在我的索引中,控制器很简单

 @recipes = Recipe.all
Run Code Online (Sandbox Code Playgroud)

和观点

<% @recipes.each do |recipe| %>
<tr>
<td><%= recipe.name %></td>
<td><%= recipe.description %></td>
<td><%= recipe.country %></td>
<td>Avg Rating =<%= not sure here %></td>
</td>
</tr>
<% end %>
Run Code Online (Sandbox Code Playgroud)

当我看到答案时,我肯定感到愚蠢,但是现在无法想到如何做到这一点

谢谢

ruby-on-rails scopes ruby-on-rails-3

3
推荐指数
1
解决办法
1946
查看次数

如何复制Magento CMS页面和内容块以用于其他语言范围

我需要了解是否可以像使用产品一样复制Magento中的内容块或页面?

例如,我可以在(英语)中创建产品,然后选择替代语言范围(意大利语)并将文本粘贴到意大利语版本中.

这很直观.

这对CMS页面和块是否可行?它似乎不是 - 但也许我错过了什么?

我导航到CMS>页面并选择要编辑的页面,它只是提供更改语言分配的能力(不替换它用于替代范围).

magento content-management-system scopes

3
推荐指数
1
解决办法
4554
查看次数

AWS Cognito 资源服务器标识符和范围 资源服务器带来

我读过文档并看到了这个。努力将 Cognito + API GW + OAuth2 组合在一起。我的问题:

  1. 我是否正确理解资源服务器范围的流程和使用:客户端应用程序向 Cognito 用户池请求 JWT 令牌(发生登录/授权)。令牌请求包含自定义范围 A,以便 Cognito 返回 JWT 访问令牌。之后,客户端应用程序使用获得的令牌对“资源服务器”(例如我们配置的 API GW 端点)进行 REST API 调用。API GW端点设置为使用我们的Cognito用户池作为授权者+范围设置为自定义范围A。因此这里的范围就像“角色”或“权限”:如果客户端有一个有效的JWT令牌+此令牌有一个自定义范围 内部 + API GW 端点设置为使用该范围 - 然后客户端应用程序被授权调用 API GW 端点。实际上,它的作用就像端点的“基于资源的 IAM 策略”,但这里不涉及 IAM。
  2. 我是否正确理解AWS Cognito 资源服务器标识符是任意字符串?它不是实际“资源服务器”(我们的 API GW)的 URI。URI 格式纯粹用于唯一性,并且在流程中没有 Cognito 资源服务器标识符重要或以某种方式检查/验证的地方?另外,资源服务器标识符似乎不会影响 JWT 令牌生成或令牌内容?

谢谢你的澄清。

scopes oauth-2.0 amazon-cognito

3
推荐指数
1
解决办法
4257
查看次数

使类变量在其他范围内可用?C++

在我的类的构造函数中,我创建了一个具有所需大小的数组,如下所示:

ArrayClass::ArrayClass(int size) 
{
    Number* nmbr = new Number[size];
}
Run Code Online (Sandbox Code Playgroud)

ArrayClass::ArrayClass()
{ 
    Number* nmbr = new Number[2];
}
Run Code Online (Sandbox Code Playgroud)

我也在标题中指定了它

Number* nmbr;
Run Code Online (Sandbox Code Playgroud)

虽然数组本身的创建工作,我似乎无法在构造函数之外访问它.似乎每当我离开构造函数时,变量都会从内存中释放出来.如何防止这种情况,以便在调用类中的其他函数时可以使用变量?

c++ arrays variables class scopes

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

Rails Searchkick 与控制器中的范围

我正在制作一个搜索页面,其中侧面有几个过滤器,我正在尝试将它们与 Searchkick 集成以查询产品。

这些是我用于产品的范围

型号/产品.rb

scope :in_price_range, ->(range) { where("price <= ?", range.first) }    
scope :in_ratings_range, -> (range) { where("average_rating >= ?", range.first) }

def self.with_all_categories(category_ids)
    select(:id).distinct.
    joins(:categories).
    where("categories.id" => category_ids)
end
Run Code Online (Sandbox Code Playgroud)

这就是我实际上调用范围的地方

控制器/search_controller.rb

@results = Product.search(@query)
@results = @results.with_all_categories(params[:category_ids]) if params[:category_ids].present?
@results = @results.in_price_range(params[:price]) if params[:price].present?
@results = @results.in_ratings_range(params[:rating]) if params[:rating].present?
Run Code Online (Sandbox Code Playgroud)

运行后,我收到一条错误消息,指出 searchkick 模型没有任何具有我的作用域名称的方法。

#Searchkick::Results:0x00007f4521074c30> 的未定义方法“with_all_categories”

如何在搜索查询中使用范围?

ruby ruby-on-rails scopes searchkick

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

ColdFusion 中的 COOKIE 和 CLIENT 范围之间的区别?

我一直在谷歌搜索,但没有找到答案。

我非常了解cookie作用域在 ColdFusion 中的作用。但我不是 100% 确定client范围的目的或它与cookie范围之间的差异。它变得有点混乱,因为client可以将范围的一种存储方法设置为cookie.

有人可以提供一个示例或用例来说明差异是什么以及我何时会使用一个和另一个?

cookies coldfusion client scopes

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

范围与协会.any?

我有两个模型,员工和部门.雇员通过职位属于部门.在select标签中,我只想列出其中有员工的部门.

现在我有:

@current_company.departments.collect {|d| [d.title, d.id] if d.employees.any?}
Run Code Online (Sandbox Code Playgroud)

这给我留下了几个零选择选项.我以为我可以编写像@ current_company.departments.with_employees那样工作的depmartments的范围:

scope :with_employees, :where => (self.employees.any?)
Run Code Online (Sandbox Code Playgroud)

我意识到这不起作用,但我坚持我应该做的事情.

tags select ruby-on-rails scopes

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

大写是否会影响 golang 功能块内的变量?

如果我在函数中声明一个变量或参数,大写是否有任何影响或意义?

显然,对于函数之外的方法和变量,它会导出它们,但是上面的呢?

variables go scopes

0
推荐指数
1
解决办法
351
查看次数