标签: exists

如何在没有"未定义的局部变量或方法"的情况下检查变量是否存在?

这是一种常见的模式:如果变量不存在,我会收到undefined local variable or method错误.

现有代码有,if variable_name.present?但这并没有考虑到不存在的变量.

如何检查变量的值并考虑它根本不存在?

我试过了:

if (defined? mmm) then
  if mmm.present? then
    puts "true"
  end
end
Run Code Online (Sandbox Code Playgroud)

但Ruby仍然检查内部mmm.present?并且当它不存在时抛出"没有这样的变量".

我相信这有一个共同的模式/解决方案.

ruby variables ruby-on-rails exists undefined

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

jQuery:检查jQuery对象是否包含(包含)精确的DOM元素

我有一个DOM元素的引用,以及一个jQuery对象,它是一个选择器的结果,我想检查该特定的DOM元素是否在该jQuery对象中.如果没有循环遍历整个jQuery对象并检查是否相等,那么jQuery中有一种直接的方法可以做到这一点吗?

我已经试过.contains,:contains,.has:has,和他们都不做的工作.另外,我应该提到我正在使用的所有元素都在相同的DOM树级别上,所以不必担心父母/孩子.

jquery element contains exists selected

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

检查是否存在推特用户名

有没有办法检查是否存在推特用户名?没有通过OAuth或twitter基本身份验证进行身份验证?

authentication twitter oauth exists

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

如何使用XSL检查外部文件是否存在?

我已经找到了很多引用Java和C的例子,但是我如何或者我可以检查是否存在使用XSL的外部文件.

首先,我意识到这只是一个片段,但它是一个巨大的样式表的一部分,所以我希望它足以显示我的问题.

    <!-- Use this template for Received SMSs -->
<xsl:template name="ReceivedSMS">
    <!-- Set/Declare "SMSname" variable (local, evaluates per instance) -->
    <xsl:variable name="SMSname">
        <xsl:value-of select=" following-sibling::Name"/>
    </xsl:variable>
    <fo:table font-family="Arial Unicode MS" font-size="8pt" text-align="start">
        <fo:table-column column-width=".75in"/>
        <fo:table-column column-width="6.75in"/>
        <fo:table-body>
            <fo:table-row>
                <!-- Cell contains "speakers" icon -->
                <fo:table-cell display-align="after">
                    <fo:block text-align="start">
                        <fo:external-graphic src="../images/{$SMSname}.jpg" content-height="0.6in"/>
Run Code Online (Sandbox Code Playgroud)

我想做的是,在一条"如果"的声明中,这{$SMSname}.jpg条线路就是这样.那是:

                     <fo:block text-align="start">
                        <xsl:if test="exists( the external file {$SMSname}.jpg)">
                            <fo:external-graphic src="../images/{$SMSname}.jpg" content-height="0.6in"/>                            
                        </xsl:if>
                        <xsl:if test="not(exists( the external file {$SMSname}.jpg))">
                            <fo:external-graphic src="../images/unknown.jpg" content-height="0.6in"/>                            
                        </xsl:if>
                    </fo:block>                       
Run Code Online (Sandbox Code Playgroud)

由于"分组"等,我正在使用XSLT 2.0.我希望这是可以做到的.我希望它更简单. …

xslt document xsl-fo external exists

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

JQuery:检查元素是否存在于'.remove()'旁边

我知道你可以检查一个元素是否存在$('div').length,但是当一个元素被销毁时.remove(),.length仍然会报告div存在.我怎样才能发现它是否真的存在?

if ($('div').length) { 
  alert('yes') 
} else { 
  alert('no') 
}
Run Code Online (Sandbox Code Playgroud)

jquery exists

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

如果所有列值都为true,则返回true

在PostgreSQL中有一种更快的方法来基本上在几行中执行if吗?

说我有一张桌子

ticket | row | archived
1      | 1   | true
1      | 2   | true
1      | 3   | true
2      | 1   | false
2      | 2   | true
Run Code Online (Sandbox Code Playgroud)

有没有什么方法可以在ticket =的列下面做一个if语句?因此,ticket = 1的地方是真的

true && true && true = true
Run Code Online (Sandbox Code Playgroud)

并且ticket = 2将是假的,因为

false && true = false
Run Code Online (Sandbox Code Playgroud)

或者我应该坚持下去

SELECT ( (SELECT COUNT(*) FROM table WHERE ticket = 1)
       = (SELECT COUNT(*) FROM table WHERE ticket = 1 AND archived = true) )
Run Code Online (Sandbox Code Playgroud)

sql postgresql boolean-logic exists aggregate-functions

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

如何等到File.Exists?

我有一个应用程序,在所选文件夹中侦听*.log文件.我用过FileSystemWatcher.

但有一个问题.负责制作该文件的另一个应用程序采取以下步骤:

  1. 制作一个*.gz文件
  2. 将其解压缩到txt文件(一些随机文件名)
  3. 将*.txt名称更改为具有*.log扩展名的正确名称.

我无法改变这种行为.

所以我FileSystemWatcher为*.gz和*.txt文件做了2 秒.为什么?因为此应用程序有时不解压缩gz文件,有时不会将txt文件重命名为最终的*.log文件.

FileSystemWatcher2 捕获txt文件,然后(在大多数情况下,它被重命名为在接下来的1000毫秒登录)我需要等待一段时间来检查是否存在txt文件(如果没有,它似乎被重命名为最终的*.log文件).

问题是,如何检查文件是否存在而不Thread.Sleep()阻止UI冻结?

我希望很清楚,如果不是,我会尝试更好地描述它.我认为这是一个复杂的问题.

一些代码示例:

Watz for gz文件:

private void fileSystemWatcher_Created(object sender, FileSystemEventArgs e)
{
   //this is for gz files in case if gz file is not unpacked automatically by other app
   //I need to wait and check if gz was unpacked, if not, unpack it by myself,
   //then txt watcher will catch that
   Thread.Sleep(5000);
   if (File.Exists(e.FullPath))
   {
      try
      {
         byte[] dataBuffer = new byte[4096];
         using …
Run Code Online (Sandbox Code Playgroud)

c# multithreading sleep file exists

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

如何修复"当未使用EXISTS引入子查询时,只能在选择列表中指定一个表达式"错误?

我正在尝试在MS SQL 2012 Express上运行以下查询:

Select (
    Select Id, Salt, Password, BannedEndDate
    from Users
    where username = '" + LoginModel.Username + "'
), (
    Select Count(*)
    From LoginFails
    where username = '" + LoginModel.Username + "'
    And IP = '" + Request.ServerVariables["REMOTE_ADDR"] + "')"
);
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

select未引入子查询时,只能在列表中指定一个表达式EXISTS.

我怎么解决这个问题?

sql t-sql sql-server exists

14
推荐指数
2
解决办法
10万
查看次数

纠正PHP方式来检查外部图像是否存在?

我知道答案中至少有10个相同的问题,但它们似乎都没有完美地为我工作.我正在尝试检查内部或外部图像是否存在(图像URL是否有效?).

  1. fopen($url, 'r')失败,除非我使用@fopen():

    Warning: fopen(http://example.com/img.jpg) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in file.php on line 21
    
    Run Code Online (Sandbox Code Playgroud)
  2. getimagesize($img) 当图像不存在时失败(PHP 5.3.8):

    Warning: getimagesize() [function.getimagesize]: php_network_getaddresses: getaddrinfo failed
    
    Run Code Online (Sandbox Code Playgroud)
  3. CURL失败,因为某些服务器不支持它(尽管它主要出现在各处).
  4. fileExists() 失败,因为它不能与外部URL一起使用,也无法检查我们是否正在处理图像.

对这种问题最常见的答案有四种方法是错误的.这样做的正确方法是什么?

php image exists

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

如何检查php中是否存在命名空间

我有一个PHP库 https://github.com/tedivm/Fetch,它使用Fetch命名空间,我想在我的脚本中检查它的存在.

我的脚本代码:

// Load Fetch
spl_autoload_register(function ($class) {
    $file = __DIR__ . '/vendor/' . strtr($class, '\\', '/') . '.php';
    if (file_exists($file)) {
        require $file;

        return true;
    }
});

if (!class_exists('\\Fetch')) {
  exit('Failed to load the library: Fetch');
}
$mail = new \Fetch\Server($server, $port);
Run Code Online (Sandbox Code Playgroud)

但始终显示此消息.但图书馆正在全力以赴.

在此先感谢您的帮助!

php namespaces class exists

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