我刚开始使用SQLAlchemy.我决定使用它,因为我在sqlite查询中使用了很多字符串表达式.
所以,这是我的问题.我有一张桌子,里面有许多设备,每个设备都有维护等级的日期.关键是用户可以选择他想要在屏幕上看到的维护级别.因此,我应该为他选择的每个维护级别组合"调整"我的SQLAlchemmy.
例如,在原始SQLite中.
SELECT*WHERE(设备IN [])和m_level1 = DATE AND m_level2 = DATE ....)
因此,每个if条件都可以有许多组合,它取决于检查哪个复选框.正如我所提到的,在原始SQL中我使用了很多字符串来达到我的目标.但我想使用SQLAlchemy改进代码.
对不起,我现在没有代码!谢谢你们 !
我想弄清楚为什么案例 C 不起作用。正如您所看到的,当我使用 'yield' 和 '<<' 糖语法时,它会引发错误,但如果我使用该方法的名称 'acc.push',它会起作用。另一方面,如果我使用 'result' 变量来获取 yield 结果,然后使用 << 语法添加到 acc 数组,它就可以工作。我只是想了解为什么它在 C 的情况下不起作用。谢谢。
案例 A - 工作正常
def my_map(my_arr)
c = 0 # the counter
acc = [] # new array
until c == my_arr.length
acc.push(yield my_arr[c])
c += 1
end
acc
end
p my_map( [1,2,3,4] ) { |each| each * 10 }
Run Code Online (Sandbox Code Playgroud)
案例 B - 工作正常
def my_map(my_arr)
c = 0 # the counter
acc = [] # new array
until c == my_arr.length …Run Code Online (Sandbox Code Playgroud)