我想在Rails应用程序中进行SQL查询,该应用程序在添加下拉菜单时添加条件.显然,如果未选择下拉列表,我不想使用空白条件进行搜索.如何在SQL语句中开发动态条件?
未经测试的例子:
未选择下拉列表时:Object.find("billy"::conditions => {})
选择下拉列表时:Object.find("billy"::conditions => {"last_name =>"johnson"})
谢谢您的意见!
sql search activerecord ruby-on-rails conditional-statements
如何基于下拉列表选择创建条件语句?
假设我们有一个包含条目的下拉列表:
Alpha
Bravo
Charlie
Other
Run Code Online (Sandbox Code Playgroud)
我想创建一个条件语句,如果其中Other是当前从下拉列表中选择的条目,我想回显一个换行符,说明If Other, Please Specify。但是,如果不是当前选择的条目,则我不希望填充该字符串。
所以假设你有一个非常基本的人物对象,有两个值和一个函数:
function personObject() {
this.name = 'First Name';
this.placeInLine = 1;
this.setPlaceInLine = function(place) {
this.placeInLine = place;
}
}
Run Code Online (Sandbox Code Playgroud)
我们设置了一些这样的变量:
var john = new personObject();
var bill = new personObject();
var message = "";
Run Code Online (Sandbox Code Playgroud)
现在看看下面的三个代码片段......
---代码#1 ---
if(john.placeInLine < bill.placeInLine) message = "John is before Bill";
else message = "John is not before Bill";
Run Code Online (Sandbox Code Playgroud)
结果:消息="约翰不在比尔之前"; //因为1不小于1
---代码#2 ---
bill.setPlaceInLine(2); // change Bill's place to 2 (instead of default of 1)
if(john.placeInLine < bill.placeInLine) message = "John is before Bill"; …Run Code Online (Sandbox Code Playgroud) 我的python代码中的条件有问题.这是一个数学应用程序,这里的代码部分运行不正常:
def askNumber():
"""Asks the number to test"""
a=raw_input("Select the number to test (type 'exit' for leaving):")
if len(a)!=0 and a.lower!="exit":
try:
b= int(a)
processing(b)
except ValueError:
print "Your input is not valid. Please enter a 'number'!"
time.sleep(1)
askNumber()
elif len(a)!=0 and a.lower=="exit":
answer()
else:
print "Your input can't be 'empty'"
time.sleep(1)
askNumber()
Run Code Online (Sandbox Code Playgroud)
因此,当在"a"的raw_input中输入"exit"时,应用的假设条件是elif,但最终应用if,最后打印"您的输入无效.请输入'数字'! " 对不起,如果它是明显的东西,我是一个乞丐,虽然我试图多次找到错误.
我发现了一个非常奇怪的c ++代码.有人可以为我解释for循环条件吗?
为什么它只有一个数组和索引变量?
include <iostream>
using namespace std;
int main()
{
int a[] = {1, 2, 3, 4, 5};
for (int i = 0; a[i];i++){
cout << a[i] << endl;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
结果是:
1
2
3
4
五
-858993460
2424376
12655176
1
3492888
3483368
1402216725
为什么输出12个元素?那些额外的7个元素来自哪里?非常感谢!
我试图定义我自己的函数,使我的hw2更容易,但它不起作用.你能看看它并告诉我我错过了什么吗?
(DEFUN testAL(x)
COND ( ( ATOMP(x) ) 'this-is-an-atom )
( ( LISTP(x) ) 'this-is-a-list )
( T 'this-is-neither ) )
Run Code Online (Sandbox Code Playgroud)
我希望这个条件函数接受输入X并输出它是一个原子,列表,还是两者都没有.问题是,当我输入NIL时,我收到一个错误:尝试获取未绑定变量`COND'的值.
作业2包括以下问题:
以下哪一项是原子,哪些列表,哪两个都没有?
一个.零
湾 (例如10 3)
C.(AB)
d.64
即 Ť
F.(没有像家一样的地方)
G.'(+ 3 5 6)
我有这个非常简单的if块:
if obj_type == "domain":
key = "domain"
elif obj_type == "db_user":
key = "username"
else:
key = "name"
Run Code Online (Sandbox Code Playgroud)
这些可以转换为if表达式:
key = "domain" if obj_type == "domain" else "usernme" if obj_type == "db_user" else "name"
性能有任何优势吗?如果这不是一个因素,哪个应该是首选的可读性,PEP8合规性?
这种用法在编写循环时很常见.
我在想,如果i >=0需要更多的CPU周期,因为它有两个条件greater than OR equal to相比i > -1.一个人知道比另一个好,如果是,为什么?
我有一个条件比较两个整数,但它永远不会返回true,即使两个数字都相等.
foreach (TreeViewItem item in Categories.Items)
{
if (subCategory.Tag == item.Tag)
{
item.Items.Add(subCategory);
}
}
Run Code Online (Sandbox Code Playgroud)
两者都是TreeviewItem的属性
TreeViewItem catItem = new TreeViewItem();
catItem.Tag = (int)row["CategoryID"];
Categories.Items.Add(catItem);
Run Code Online (Sandbox Code Playgroud)
和
TreeViewItem subCategory = new TreeViewItem();
subCategory.Tag = (int)row["CategoryID"];
Run Code Online (Sandbox Code Playgroud)
即使两个值都变得相等,条件也会返回错误并且不会达到 item.Items.Add(subCategory);
有谁知道我错过了什么?两者都是同一类型(int)...谢谢
这应该很简单,但我似乎错过了一些东西..
start = $('[name=start]').val().split('.');
last = start[3];
end = $('[name=end]').val();
if (end < last) {
alert('BLAH BLAH');
return false;
}
Run Code Online (Sandbox Code Playgroud)
我已经提醒了价值观,我可以看到一个测试
最后= 100
结束= 90
因此if ( 90 < 100 )应该显示警报但不是.
我究竟做错了什么 ?谢谢
javascript ×2
python ×2
activerecord ×1
arrays ×1
atomic ×1
c# ×1
c++ ×1
common-lisp ×1
comparison ×1
cpu-usage ×1
expression ×1
for-loop ×1
if-statement ×1
indexing ×1
jquery ×1
lisp ×1
list ×1
pep8 ×1
performance ×1
php ×1
return ×1
search ×1
sql ×1