1
기본 경로가 있으며 템플리트가 설정중인 데이터를받지 못합니다.데이터를로드하지 않는 유성 철근 라우터
App =
subs:
posts: Meteor.subscribe "posts"
users: Meteor.subscribe "users"
Router.configure
wait: [App.subs.posts, App.subs.users]
loadingTemplate: 'loading'
Router.map ->
@route 'post_show',
path: '/p/:slug'
before: ->
if App.subs.post
App.subs.post.stop()
App.subs.post = Meteor.subscribe "post", @params.slug
waitOn: ->
App.subs.post
after: ->
if @getData().post
document.title = @getData().post?.title
data: ->
p = Posts.findOne
$or: [{
slug: @params.slug
}, {
_id: @params.slug
}]
date = new Date p.timestamp
date_added = "{0}-{1}-{2}".format date.getFullYear(), date.getMonth()+1, date.getDate()
data =
post: p
date_added: date_added
data
template: 'post_show'
서버 코드 : 나는 페이지를 새로 고침 할 때
Meteor.publish "posts", ->
return Posts.find()
Meteor.publish "post", (id_or_slug) ->
return Posts.find({
$or: [{
slug: id_or_slug
}, {
_id: id_or_slug
}]
})
Meteor.publish "userData", ->
return Meteor.users.find {},
fields:
profile: 1
data
방법 내부 p
변수는 정의되지 않습니다. 어떤 아이디어?
나도 똑같은 질문을하는 것에 동의한다. https://www.eventedmind.com/feed/q8QWX5e7PTu8BEReY (분 12 체크) –
동일한 컬렉션에 대해 여러 가지 게시 기능을 사용할 수 있습니다. 사실 하나의 게시물을 보려면 전체 컬렉션을 게시 할 필요가 없으므로 대부분의 경우에 사용해야합니다. 문제가 게시 함수에 있다고 생각되면 콘솔에서 Posts.find(). fetch()를 실행하여 반환되는 내용을 확인하십시오. 문제가 경로에있는 경우 출력이 표시됩니다. :) –
나는 당신의 조언을 따라 이상한 것을 보았습니다. 게시물을 업데이트하고'Posts.find(). fetch()'를 호출하면 내 게시물을 반환하지만 내가 편집 한 게시물에는 이전 데이터 (편집하지 않은 상태)가 계속 포함됩니다. mongodb 데이터베이스를 검사하면 변경 사항이 제출되어 내 클라이언트가 어떤 이유로 업데이트되지 않고 내 클라이언트가 이전 데이터를 보유하고 있기 때문에 새로운 슬러그로 리디렉션 할 수 없습니다. 나는 게시 코드를 제거했고, 지금은'posts'에 가입했지만이 문제와 관련하여 여전히 행운이 없습니다. –