在我的Post.rb模型中,我有 default_scope :conditions => {:deleted => 'false'}
但如果我试图跑Post.find(:all, :conditions => "deleted='false'"),它将不会返回任何东西.就像default_scope优先于所有内容一样.
我想要它,以便当我这样做Post.find()时不会返回已删除的帖子,但我也希望能够在需要时访问它们.在我的查询或我的Rails模型中需要更改什么?
谢谢.
我是Rails的新手,我现在遇到了一个我无法用我的朋友谷歌解决的问题:)
在我的表格中,我有一个具有三个值的选择:Apple,Banana和Cherry.如果我从选择中选择Apple,则使用一些Javascript隐藏另一个Select-和Text-field,因为当选择Apple时,不再需要填写其他两个字段.
所以现在我在提交表单时验证表单时遇到问题.我发现了一些类似的问题,例如"如果另一个是空白则仅验证字段".
这个问题解决了这样:
validates_presence_of :mobile_number, :unless => :home_phone?
Run Code Online (Sandbox Code Playgroud)
所以我刚刚尝试了第一件突然出现的事情:
validates_presence_of :state, :granted_at, :if => :type != 1
Run Code Online (Sandbox Code Playgroud)
但是当我运行它时,我收到此错误:
undefined method `validate' for true:TrueClass
Run Code Online (Sandbox Code Playgroud)
所以现在我没有找到如何从创建的对象中访问值...在预先感谢您的帮助,我希望我的问题不像听起来那么明显:-)
我正在尝试使用ES6类在我正在构建的API中构建数据模型(来自MySQL数据库).我不喜欢使用ORM/ODM库,因为这将是一个非常基本的简单API.但是,我很难理解如何定义这些模型.
我的数据实体(这些只是一些简化的例子):
id
name
groupId
status (enum of: active, suspended, closed)
Run Code Online (Sandbox Code Playgroud)
_getState(status) {
var state = (status == 'active' ? 'good' : 'bad');
return state;
}
Run Code Online (Sandbox Code Playgroud)
我希望能够做到:
findById:提供单个customer.id,返回该特定客户的数据,即 SELECT * FROM customers WHERE id = ?
findByGroupId:提供group.id,返回属于该组的所有客户(在一个对象数组中)的数据,即 SELECT * FROM customers WHERE groupId = ?
对于每个客户对象,我想要返回这样的JSON:
findById(1);:
[{
"id" : 1,
"name" : "John Doe",
"groupId" : 2,
"status" : "active",
"state" : "good"
}]
Run Code Online (Sandbox Code Playgroud)
findByGroupId(2);:
[{
"id" : 1,
"name" : "John …Run Code Online (Sandbox Code Playgroud) 例如(不是这种情况,只是为了说明),如果我想添加一个动作来将所选项目中的特定字段设置为X.是否可以添加一个动作以允许输入X而不是硬编码?
我一直在尝试和失败一段时间找到一个解决方案来比较基于对象属性的对象列表.我已经阅读了其他类似的解决方案,但它们要么不合适(或者我不理解答案!).
代码是C#
我有一个代表图像的模型
public class AccommodationImageModel
{
public int Id { get; set; }
public string Path { get; set; }
public string Caption { get; set; }
public string Description { get; set; }
public bool CoverImage { get; set; }
public bool Visible { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我有两个这个模型的列表.一个是现有列表,另一个是更新列表.我需要比较两个列表,看看哪些已被删除,更新或是新的.
我不需要比较整个对象,只需在它们的属性Id上进行比较.
List<AccommodationImageModel> masterList;
List<AccommodationImageModel> compareList;
Run Code Online (Sandbox Code Playgroud)
如果compareList包含Id = 0的任何AccommodationImageModel,则它们是新的,因为新条目尚未分配Id.
如果masterList包含任何具有不在compareList中的Ids的AccommodationImageModel,那么它们将被删除,因为它们已从compareList中删除并应从masterList中删除.因此,我需要一个需要删除的列表.
如果newList和masterList具有相同的Id,那么它们将被更新.因此,我需要一个共享相同ID的列表,所以我可以更新它们.我不太关心这些模型是否相同且不需要更新,因为每个列表只会有一个小数字,所以即使它们没有改变它们也会更新并不重要.
三个结果中的每一个都需要作为AccommodationImageModel列表返回,以便我可以执行相应的更新,删除,添加.
我在下面用我选择的ATM解决方案添加了3种测试方法,展示了它的工作实现.
[TestMethod]
public void Test_Deleted_Image()
{
// set up the masterList
List<AccommodationImageModel> masterList …Run Code Online (Sandbox Code Playgroud) 这是关于django的问题.我有一个模特说"汽车".这将有一些基本字段,如"颜色","车辆所有者名称","车辆成本".
我想提供一个表单,用户可以根据他添加的汽车添加额外的字段.例如,如果用户正在添加"Car",则他将在运行时动态地在表单中添加额外字段,例如"Car Milage","Cal Manufacturer".假设用户想要添加"卡车",他将添加"可以携带的负载","允许"等.
我如何在django中实现这一目标?
这里有两个问题:
我正在尝试将来自clinicaltrials.gov的大约30k xml文件加载到mySQL数据库中,我处理多个位置,关键字等的方式是使用ManyToManyFields的单独模型.
我弄清楚的最好的方法是使用夹具读取数据.所以我的问题是,如何处理数据是指向另一个模型的指针的字段?
遗憾的是,我对ManyToMany/ForeignKeys的工作原理不了解,能够回答......
感谢您的帮助,示例代码如下:_ _代表ManyToMany字段
{
"pk": trial_id,
"model": trials.trial,
"fields": {
"trial_id": trial_id,
"brief_title": brief_title,
"official_title": official_title,
"brief_summary": brief_summary,
"detailed_Description": detailed_description,
"overall_status": overall_status,
"phase": phase,
"enrollment": enrollment,
"study_type": study_type,
"condition": _______________,
"elligibility": elligibility,
"Criteria": ______________,
"overall_contact": _______________,
"location": ___________,
"lastchanged_date": lastchanged_date,
"firstreceived_date": firstreceived_date,
"keyword": __________,
"condition_mesh": condition_mesh,
}
Run Code Online (Sandbox Code Playgroud)
}
我尝试了以下方法:
es:
activerecord:
attributes:
name: Nombre
Run Code Online (Sandbox Code Playgroud)
它没有用.
但以下工作:
es:
activerecord:
attributes:
person:
name: Nombre
Run Code Online (Sandbox Code Playgroud)
哪种方法可以跨模型定义默认属性?
我也在使用Formtastic和Active Admin.
activerecord locale ruby-on-rails internationalization models
我是Rails的新手,并开始了一个项目,我对我的模型和数据库模式不满意.
我想从头开始,但保留我的所有观点,控制器.
这样做的最佳方法是什么?
我想删除所有迁移和所有模型.此过程后应该没有不相关的文件(比如不再使用的迁移).
如果它有帮助,我正在使用Rails 3.1
谢谢!
当我尝试在其中一个表中运行插入时,出现以下错误.
无法分配"1":"Team.department_id"必须是"部门"实例
不可否认,我有点不确定我是否正确使用外键概念.我正在尝试运行的插件和我的models.py中的一个片段如下所示.
我想要做的是当有人想要创建一个新团队时.他们必须将它附加到一个部门.因此,部门ID应该在两组表中.
new_team = Team(
nickname = team_name,
employee_id = employee_id,
department_id = int(Department.objects.get(password = password, department_name = department_name).department_id)
)
Run Code Online (Sandbox Code Playgroud)
models.py
class Department(models.Model):
department_id = models.AutoField(auto_created=True, primary_key=True, default=1)
department_name = models.CharField(max_length=60)
head_id = models.CharField(max_length=30)
password = models.CharField(max_length=128)
class Team(models.Model):
team_id = models.AutoField(primary_key=True)
department_id = models.ForeignKey('Department', related_name = 'Department_id')
employee_id = models.CharField(max_length=30)
nickname = models.CharField(max_length=60)
team_image = models.ImageField(upload_to=get_image_path, blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)
在此处输入代码
models ×10
django ×4
python ×2
activerecord ×1
admin ×1
api ×1
c# ×1
compare ×1
dynamic ×1
ecmascript-6 ×1
fixtures ×1
foreign-keys ×1
javascript ×1
list ×1
locale ×1
many-to-many ×1
migration ×1
object ×1
ruby ×1
validation ×1