假设我有一个独立的用户模型和服务模型.
我还有一个订单模型,用于保存用户为服务创建的订单.我想知道如何在rails中正确创建订单条目.
以下是我将如何创建订单条目,如果它仅引用另一个模型,比如用户.
@order = current_user.orders.build(params[:order])
@order.save
Run Code Online (Sandbox Code Playgroud)
现在,如果订单涉及多个模型(用户和服务),我该怎么做?
假设Order模型具有user_id和service_id属性,并且所有模型对象都使用belongs_to和has_many关系正确标记.
如何动态地从模型对象获取属性?我将User对象的属性作为字符串:
u = User.find(1)
Run Code Online (Sandbox Code Playgroud)
我能做点什么吗 u.get("user_id")
我正在尝试使用编写MySQL模型的一些好方法node-mysql
.
这是我到目前为止所拥有的:
var client = app.settings.client; // Client is set in Express settings
var table = 'users';
var User = function() {
}
// Create the user with data from Facebook
User.prototype.createFromFacebook = function (name, first_name, last_name, email, location, gender, facebookId, facebookToken, callback) {
client.query(
'INSERT INTO ' + table +
' SET name = ?, first_name = ?, last_name = ?, email = ?, location = ?,' +
' gender = ?, facebook_id = ?, facebook_token = …
Run Code Online (Sandbox Code Playgroud) 我相信我的问题的答案很简单,但我无法在任何地方找到它.这是我的困境.我有两个模型:Member和MemberDetail,它们是oneToOne关系,如下所示:
class Member(models.Model):
ID = models.AutoField(primary_key=True)
FIRST_NAME = models.CharField('First name', max_length=50)
LAST_NAME = models.CharField('Last name', max_length=50)
def __unicode__(self):
return u'%s %s' % (self.FIRST_NAME, self.LAST_NAME)
class MemberDetail(models.Model):
member = models.OneToOneField(Member, primary_key=True)
DATE_OF_BIRTH = models.DateField('Date of birth')
EMAIL = models.EmailField('E-mail')
PHONE = models.CharField('Phone', max_length=15)
Run Code Online (Sandbox Code Playgroud)
现在在我的admin.py中,我想要显示包含所有数据的成员表,如下所示:
class MemberDetailInline(admin.TabularInline):
model = MemberDetail
class MemberAdmin(admin.ModelAdmin):
list_display = ("FIRST_NAME", "LAST_NAME", "date_of_birth", "email", "phone")
inlines = [
MemberDetailInline,
]
admin.site.register(Member, MemberAdmin)
Run Code Online (Sandbox Code Playgroud)
我根本不知道怎么写list_display的"date_of_birth","email"和"phone"部分.我能做的最接近的事情是在内联后添加:
def date_of_birth(self, MemberDetail):
return MemberDetail.DATE_OF_BIRTH
def date_of_birth(self, MemberDetail):
return MemberDetail.EMAIL
def date_of_birth(self, MemberDetail):
return MemberDetail.PHONE …
Run Code Online (Sandbox Code Playgroud) 我正在运行rails v 3.2.
一些时间来开发应用程序后,我需要一些车型进入前命名空间:/app/models/address.rb
以/app/models/local/address.rb
我试着简单的移动模式,以目标文件夹并添加Local::
类名.然后我相应更新规格,我仍然在运行spec.he时出错.uninitialized constant Address (NameError)
.
问题是 - 如何将模型移动到命名空间?我的行动是什么 - 编辑迁移或其他东西......请帮助,因为我混淆了不同的文章等.
更新
我发现了什么问题:
设计和命名空间.解决它
我想在Swagger 2.0中声明类型模型的定义属性
这个定义是否正确?(特别是类型:StatusObject部分)
definitions:
MyObject:
type: "object"
properties:
id:
type: "number"
country:
type: "string"
status:
type: StatusObject
StatusObject:
type: "object"
properties:
code:
type: "number"
shortMessage:
type: "string"
message:
type: "string"
Run Code Online (Sandbox Code Playgroud)
谢谢!
检查实例是否存在,这两者中哪一个是更好和更有效的选项.最多只能返回一条记录.
1)使用过滤器选项,看它是否存在:
x = MyObject.objects.filter(someField=someValue).count()
if x:
#Instance exists
Run Code Online (Sandbox Code Playgroud)
2)使用get并检查异常:
try:
x = MyObject.objects.get(someField=someValue)
except MyObject.DoesNotExist:
#Do Something
Run Code Online (Sandbox Code Playgroud)
上面提到的哪种方法有效或更"Djangoic"?
我在Rails视图中被这个奇怪的输出所困扰.这是我的模型:
class Comment < ActiveRecord::Base
belongs_to :post
end
Run Code Online (Sandbox Code Playgroud)
以下是我的观点的相关部分.我已经将问题隔离到这个代码块,特别是在最后一次迭代之后和循环结束之前发生的任何事情<% end %>
.如果我注释掉每次迭代中打印的实际文本,原始数组仍然会打印出来.
<h2>Comments</h2>
<%= @post.comments.each do |comment| %>
<p>
<strong>Commenter:</strong>
<%= comment.commenter %>
</p>
<p>
<%= comment.body %>
</p>
<% end %>
Run Code Online (Sandbox Code Playgroud)
这是奇怪的输出(带样本注释.):
评论者:迈克尔
好帖子.
评论者:迈克尔
好帖子.
评论者:迈克尔
测试.
评论者:约翰
阵列仍然有趣吗?
[#<Comment id: 1, commenter:
"Michael", body: "Good post.",
post_id: 1, created_at: "2011-01-12
03:51:20", updated_at: "2011-01-12
03:51:20">, #<Comment id: 2,
commenter: "Michael", body: "Good
post.", post_id: 1, created_at:
"2011-01-12 03:52:06", updated_at:
"2011-01-12 03:52:06">, #<Comment id:
3, commenter: "Michael", body: …
Run Code Online (Sandbox Code Playgroud) 由于某种原因,今天我无法使用python manage.py dumpdata
或从可以下载mysql文件的链接转储我的数据库.
我尝试使用python manage.py dumpdata --traceback
,这是我的信息.
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "/usr/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 438, in execute_manager
utility.execute()
File "/usr/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/lib/python2.7/site-packages/django/core/management/base.py", line 191, in run_from_argv
self.execute(*args, **options.__dict__)
File "/usr/local/lib/python2.7/site-packages/django/core/management/base.py", line 220, in execute
output = self.handle(*args, **options)
File "/usr/local/lib/python2.7/site-packages/django/core/management/commands/dumpdata.py", line 114, in handle
use_natural_keys=use_natural_keys)
File "/usr/local/lib/python2.7/site-packages/django/core/serializers/__init__.py", line 91, in serialize
s.serialize(queryset, **options)
File "/usr/local/lib/python2.7/site-packages/django/core/serializers/base.py", line 48, in serialize
self.handle_fk_field(obj, field)
File "/usr/local/lib/python2.7/site-packages/django/core/serializers/python.py", …
Run Code Online (Sandbox Code Playgroud) 我正在学习Django.我的背景来自PHP和Java,具有使用模型视图控制器框架的经验.我的每个视图,模型和模板都有一个单独的文件 - 但是Django教程只提到了一个views.py和models.py.
如果您有一个小应用程序似乎没问题 - 如果您想根据其目的组织您的观点和模型,该怎么办?例如,"项目"视图和"里程碑"视图.我希望你不必为每个视图模块创建另一个Python包(app):
python manage.py startapp projects
python manage.py startapp milestones
我可以假设您可以为视图和模型设置里程碑.py和projects.py,而不是通用的views.py和models.py?然后可以在必要时将模型导入到视图中,并将请求路由到特定视图?
models ×10
django ×4
mysql ×2
ruby ×2
views ×2
admin ×1
arrays ×1
database ×1
definitions ×1
namespaces ×1
node.js ×1
one-to-one ×1
python ×1
swagger ×1