小编Abd*_*ziz的帖子

在Rails 4.1中,如何通过枚举符号查找记录?

假设我有这个模型:

class Conversation < ActiveRecord::Base
  enum status: [ :active, :archived ]
end
Run Code Online (Sandbox Code Playgroud)

如何在不使用枚举的数值或不必迭代每个对话的情况下找到所有活动对话?

我试过了Conversation.where(status: :active),但没有产生任何结果.

想到的唯一解决方案是迭代所有对话并选择活动对话,但它看起来不是一个好的解决方案.

Conversation.all.select {|conversation| conversation.active? }  
Run Code Online (Sandbox Code Playgroud)

我能做些什么吗?

ruby ruby-on-rails ruby-on-rails-4 rails-activerecord ruby-on-rails-4.1

42
推荐指数
4
解决办法
2万
查看次数

Laravel 4:如何将WHERE条件应用于Eloquent类的所有查询?

我正在尝试为我拥有的表实现"已批准"状态,这非常简单,基本上,如果行的批准列等于1;应检索该行,否则不应该.

问题是,现在我必须通过整个代码库并添加一个WHERE语句(即函数调用),这不仅耗时而且效率低(如果我想删除该功能等)

我怎样才能做到这一点?是否像$this->where(..)在Eloquent子类的构造函数中添加一样容易?这不会影响其他CRUD操作吗?比如没有更新未经批准的行?

php mysql laravel eloquent laravel-4

11
推荐指数
2
解决办法
6120
查看次数

Expo构建:ios因收集和验证凭据时出现"错误"而失败

我正在尝试运行exp build:ios它返回以下错误:

Running: bash.exe -c PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin /mnt/c/Users/MyName/AppData/Roaming/npm/node_m
odules/exp/node_modules/@expo/traveling-fastlane-linux/traveling-fastlane-1.4.7-linux-x86_64/validate_apple_credentials "USERNAME PASSWORD"  

Error while gathering & validating credentials
04:55:52 [exp] Error: Reason:Unknown reason, raw:"{\"authType\"=>\"sa\"}\naa=11CECD94B0A448A2CA74B798F957D91C; Domain=idmsa.apple.com; Path=/; Secure
; HttpOnly, dslang=US-EN; Domain=apple.com; Path=/; Secure; HttpOnly, site=USA; Domain=apple.com; Path=/; Secure; HttpOnly, acn01=ecHGTzyh6KpEMYGK3/n
dp5OBSctZ7OhjWIMEzX9jeHHDdeMxlEYAEHHyjSOfEg==; Max-Age=31536000; Expires=Wed, 22-May-2019 01:55:52 GMT; Domain=apple.com; Path=/; Secure; HttpOnly"
04:55:52 [exp] Reason:Unknown reason, raw:"{\"authType\"=>\"sa\"}\naa=11CECD94B0A448A2CA74B798F957D91C; Domain=idmsa.apple.com; Path=/; Secure; HttpO
nly, dslang=US-EN; Domain=apple.com; Path=/; Secure; HttpOnly, site=USA; Domain=apple.com; Path=/; Secure; HttpOnly, acn01=ecHGTzyh6KpEMYGK3/ndp5OBSc
tZ7OhjWIMEzX9jeHHDdeMxlEYAEHHyjSOfEg==; Max-Age=31536000; Expires=Wed, 22-May-2019 01:55:52 GMT; Domain=apple.com; Path=/; Secure; …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-ios expo

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

如何处理所有AJAX调用的特定HTTP错误?

我有一个Web应用程序,通过AJAX请求和发送数据,作为响应,我的服务器端发送HTTP状态代码,具体取决于具体情况.所以例如,如果用户在他登录时尝试登录,我可能会返回一个400 HTTP status code.最后我用警报处理它等等.

但处理这些HTTP状态代码变得太重,因为我正在大量使用AJAX.这意味着我将使用每个AJAX请求重复处理HTTP状态代码,这将导致重复的代码,这是一个不好的做法.

所以,我正在寻找一种方法来处理在一个地方所有这些错误,所以我只是处理所有400,401等使用相同的代码.

我现在在做什么:

为每个AJAX调用手动处理错误.通过使用statusCodein $.ajax().

  statusCode: {
        500: function(data) {
            alert('Some friendly error message goes here.');
        }
Run Code Online (Sandbox Code Playgroud)

对我来说,这似乎是一种矫枉过正,随着我的网络应用程序的发展,以及我创建更多的ajax调用.我会一次又一次地重复这段代码.

目前,我唯一的想法就是创建一个可以在AJAX之上工作的函数,例如:

    function doAjax(type,url, data, moreVars) {
//this function is just a SIMPLE example, could be more complex and flexible.
        $.ajax({
            type: type,
            url: url,
            data: data,
            moreOptions:moreVars,
            //now handling all status code.
            statusCode: {
                //handle all HTTP errors from one place.
            }
        });
    }

    doAjax("POST", 'mydomain.com/login.php', dataObj);
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery http http-status-codes

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

如何使用store.createRecord()传递hasMany关系的ID?

假设我有以下型号:

// customer.js
DS.Model.extend({
  products: DS.hasMany('product')
});

// product.js
DS.Model.extend({
 customer: DS.belongsTo('customer')  
});
Run Code Online (Sandbox Code Playgroud)

我需要通过ID(尚未从后端加载)创建一个包含产品列表的客户,这类似于以下内容:

this.get('store').createRecord('customer', {products: [1, 2, 3]});  
Run Code Online (Sandbox Code Playgroud)

但这失败了,因为商店希望产品是DS.Model数组:

处理路由时出错:index断言失败:hasMany关系的所有元素必须是DS.Model的实例,您传递了[1,2,3]

如何使用ID提供的关联创建记录?

ember.js ember-data

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

Codeigniter的会话数据,它们只是cookie吗?

我将使用Codeigniter的会话数据作为我的登录系统,但首先我想了解它们,所以我阅读了用户指南,根据我的理解,Codeigniter的会话数据是justcookie.
这是真的?这意味着如果用户禁用cookie,他将无法使用Codeigniter的会话数据登录任何网站?
引:

The Session class stores session information for each user as serialized (and optionally encrypted) data in a cookie
这意味着我应该创建自己的本机PHP会话数据,以使禁用cookie的用户能够登录我的网站?或者Codeigniter的会话数据not只是cookie?

php cookies session codeigniter

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

如果PHP在Linux上运行; 如何获得具体的分发(Ubuntu,fedora等)?

我有一个与OS的CLI交互的PHP脚本,我希望这个脚本可以在不同的Linux发行版上运行,所以我必须以不同的方式与不同的Linux falvours进行交互才能实现某些功能,但我无法找到适合PHP的方法.区分它们.

我尝试过使用php_uname('s'),PHP_OS他们都回来了Linux; 这对我没什么用(我在Arch Linux上测试)

我问这个问题,因为 - 例如 - 如果我想在Ubuntu中管理服务/守护进程我将使用该service命令,并且在Arch中使用该systemctl命令,因此不知道哪个Linux发行版正在运行我的PHP脚本我无法解决这些问题.

php linux operating-system archlinux

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

为客户端显示网站MySQL表的名称是否安全?

我目前正在创建一个基于jQuery验证器插件的表单验证脚本.因此,简单的配置变得简单,如最小长度,最大长度,所需等等.
之后,我决定检查来自客户端的用户名/电子邮件的可用性,所以我不得不使用remote选项,这是一个选项我必须在创建规则数组时指定.因此,在创建规则时,我必须将数据发送到php脚本并检查输入字段的可用性.

但是由于我要检查多个输入字段的可用性,我创建了一个函数(在客户端)为每个字段重用它,该函数需要输入字段的ID和MySQL表的名称,把事情弄清楚,这是功能:

注意:
1.check_input是一个php脚本,它将获取输入字段的值和要检查的表,它将返回一个json编码的布尔值,如果表中没有匹配则为true,否则为false.

function check_input(input, table){

        $.ajax({
            type:"POST",
            url:site_url+"site/check_input",
            data:{
                input:input,
                table:table,
            }


        }).done(function(resp){
            var is_unique = JSON.parse(resp);
            return is_unique;
        });
    }
Run Code Online (Sandbox Code Playgroud)

并通过将remote选项设置为来调用此函数
check_input($('#field').val(), 'table.column');.

所以,正如你所看到的,我必须从客户端指定我的MySQL表,并且每个用户(好的和坏的)都能看到这个,这被认为是不安全还是不好的做法?
如果不是,检查可用性的合适方法是什么?

javascript php database security jquery

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

这两个指针是如何相互不同的?

我是C语言和一般指针的新手.所以我对这两件事的理解是基本的.

我一直在尝试创建一个包含函数指针的结构,没什么特别的.这样做; 我注意到这句话:

int *func()
不起作用.而这一个实际上有效:

int (*func)()

他们之间有什么区别?是因为第一个语句只是一个指向整数的指针.而另一个指针,不知何故,指向一个函数?怎么会这样?

c pointers integer function

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

从集合 ActiveRecord 对象中获取特定列?

如何在不ID单独重新查询列的情况下从返回的 ActiveRecord 结果中提取 ID 列表?
例如:

people = People.all
people.get_ids #Returns an array of IDS  
Run Code Online (Sandbox Code Playgroud)

我目前的解决方案是循环people并手动获取 ID(这不是很优雅,恕我直言)

ruby activerecord ruby-on-rails ruby-on-rails-4

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